/* Taiwan Company Financial Intelligence — isolated workspace design. */
.twfi-root {
  --twfi-ink:#182c3e;--twfi-mute:#516579;--twfi-deep:#11283b;--twfi-accent:#00796d;
  --twfi-line:#d9e3e9;--twfi-bg:#f2f6f8;--twfi-white:#ffffff;--twfi-soft:#eaf3f2;
  isolation:isolate;display:block;position:relative;width:100%;max-width:100%;min-width:0;
  box-sizing:border-box;background:var(--twfi-bg);color:var(--twfi-ink);
  font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Arial,sans-serif;
  font-size:14px;line-height:1.55;letter-spacing:0;font-weight:400;overflow:clip;
  border:1px solid #d4dfe5;border-radius:12px;
}
.twfi-root *,.twfi-root *::before,.twfi-root *::after {box-sizing:border-box;}
.twfi-root h2,.twfi-root h3,.twfi-root h4,.twfi-root p,.twfi-root dl {margin:0;padding:0;font-family:inherit;line-height:inherit;color:inherit;letter-spacing:normal;}
.twfi-root p{line-height:1.65;}
.twfi-root button,.twfi-root input,.twfi-root select{font:inherit;color:inherit;line-height:normal;box-shadow:none;text-transform:none;letter-spacing:normal;}
.twfi-root button{border-radius:6px;cursor:pointer;appearance:none;-webkit-appearance:none;font-weight:600;}
.twfi-root button:disabled{cursor:not-allowed;opacity:.48;}
.twfi-root button:focus-visible,.twfi-root a:focus-visible,.twfi-root summary:focus-visible,.twfi-root input:focus-visible,.twfi-root .twfi-table-scroll:focus-visible {outline:3px solid #239c90;outline-offset:3px;}
.twfi-root a{color:#006c65;text-decoration:underline;text-underline-offset:2px;}
.twfi-root .twfi-shell{max-width:1480px;margin:auto;min-width:0;}
.twfi-root .twfi-mast{display:flex;gap:18px;align-items:center;justify-content:space-between;background:var(--twfi-deep);padding:31px clamp(16px,3.2vw,40px);color:#fff;}
.twfi-root .twfi-mast h2{font-size:clamp(25px,3.4vw,36px);font-weight:760;line-height:1.17;letter-spacing:-.045em;color:#fff;margin:10px 0 9px;}
.twfi-root .twfi-mast p{color:#d7e5ed;max-width:720px;font-size:14px;}
.twfi-root .twfi-kicker{display:flex;align-items:center;gap:9px;flex-wrap:wrap;letter-spacing:.11em;color:#afcfdb;font-size:10px;font-weight:800;}
.twfi-root .twfi-mark{display:inline-block;width:10px;height:10px;border-radius:2px;background:#41bd9d;transform:rotate(45deg);}
.twfi-root .twfi-dot{opacity:.45;}
.twfi-root .twfi-mast-right{display:flex;flex-direction:column;text-align:right;gap:3px;min-width:196px;border-left:1px solid #355163;padding-left:25px;}
.twfi-root .twfi-mast-right>span{font-size:10px;font-weight:700;letter-spacing:.11em;color:#c4d7e1;}
.twfi-root .twfi-mast-right strong{font-size:27px;line-height:1.15;letter-spacing:-.04em;color:#fff;}
.twfi-root .twfi-mast-right strong i{font-style:normal;color:#51d4af;font-size:19px;}
.twfi-root .twfi-mast-right small{font-size:11px;color:#c5d6e0;}
.twfi-root .twfi-toolbar{padding:21px clamp(16px,3.2vw,40px);background:#fff;border-bottom:1px solid var(--twfi-line);display:flex;gap:25px;justify-content:space-between;align-items:flex-end;}
.twfi-root .twfi-find{flex:1;min-width:0;max-width:850px;position:relative;}
.twfi-root .twfi-find>label{display:block;font-size:12px;font-weight:750;color:#364c5e;margin-bottom:7px;}
.twfi-root .twfi-field{border:1px solid #aebfca;border-radius:7px;background:white;display:flex;align-items:center;overflow:hidden;min-width:0;}
.twfi-root .twfi-field>span{color:#496779;font-size:24px;padding:0 10px 0 13px;line-height:1;}
.twfi-root .twfi-field input{width:100%;min-width:0;flex:1;height:47px;padding:10px 4px;appearance:none;border:0!important;outline:0!important;background:#fff!important;font-size:14px;color:#122a3d!important;box-shadow:none!important;}
.twfi-root .twfi-field input::placeholder{color:#6b7e8e;opacity:1;}
.twfi-root .twfi-field button{min-height:47px;align-self:stretch;padding:0 23px;background:#00776c!important;border:0!important;border-radius:0;color:white!important;}
.twfi-root .twfi-field button:hover{background:#005e55!important;}
.twfi-root .twfi-index{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;min-width:164px;line-height:1.3;padding-bottom:2px;}
.twfi-root .twfi-index span{font-size:11px;color:var(--twfi-mute);font-weight:650;}
.twfi-root .twfi-index strong{font-size:27px;letter-spacing:-.05em;color:var(--twfi-deep);font-variant-numeric:tabular-nums;}
.twfi-root .twfi-index small{font-size:11px;color:#597084;text-align:right;}
.twfi-root .twfi-results{position:absolute;top:100%;left:0;right:0;z-index:30;background:#fff;box-shadow:0 13px 30px #11283b26;border-radius:0 0 9px 9px;overflow:auto;max-height:330px;}
.twfi-root .twfi-results:empty{display:none;}
.twfi-root .twfi-results button{display:flex;align-items:center;gap:11px;text-align:left;width:100%;min-width:0;background:#fff!important;border:0!important;border-bottom:1px solid #e0e7eb!important;padding:11px 13px;color:#20384b!important;}
.twfi-root .twfi-results button:hover,.twfi-root .twfi-results button:focus-visible{background:#eff8f7!important;}
.twfi-root .twfi-results button>strong{font-variant-numeric:tabular-nums;width:55px;flex-shrink:0;color:#00685f;}
.twfi-root .twfi-results button>span{flex:1;min-width:0;}
.twfi-root .twfi-results button small{display:block;color:#63798a;font-size:11px;margin-top:1px;}
.twfi-root .twfi-results .twfi-lookup-arrow{flex:0 0 auto;font-size:17px;}
.twfi-root .twfi-lookup-hint{padding:13px;color:#4c6274;background:#f9fbfc;}
.twfi-root .twfi-notice{padding:12px clamp(16px,3.2vw,40px);border-bottom:1px solid #d5e2e5;background:#e4f2f1;color:#1b4c46;font-size:13px;}
.twfi-root .twfi-notice[hidden],.twfi-root [hidden]{display:none!important;}
.twfi-root .twfi-headline{padding:22px clamp(16px,3.2vw,40px);display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--twfi-line);background:#fbfdfd;}
.twfi-root .twfi-headline h3{font-size:clamp(22px,2.5vw,30px);font-weight:800;letter-spacing:-.035em;line-height:1.2;margin:7px 0;color:#132c3d;}
.twfi-root .twfi-headline h3 small{font-size:14px;font-weight:750;background:#e6eeef;border-radius:5px;padding:4px 7px;margin-left:5px;color:#2b5960;letter-spacing:normal;vertical-align:middle;}
.twfi-root .twfi-tag{display:inline-flex;align-items:center;background:#e3f0ed;color:#146c5b;border-radius:4px;font-size:10px;padding:3px 7px;font-weight:850;letter-spacing:.09em;}
.twfi-root .twfi-chinese{color:#526a7b;font-size:12px;}
.twfi-root .twfi-head-meta{border-left:1px solid #d3dfe4;padding-left:22px;display:flex;flex-direction:column;min-width:180px;}
.twfi-root .twfi-head-meta span,.twfi-root .twfi-head-meta small{font-size:11px;color:#617587;}
.twfi-root .twfi-head-meta strong{font-size:17px;font-weight:750;color:#193e4e;}
.twfi-root .twfi-tabs{background:#fff;display:flex;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin;padding:0 clamp(16px,3.2vw,40px);border-bottom:1px solid #cbdde3;gap:22px;white-space:nowrap;}
.twfi-root .twfi-tabs button{border:0!important;border-bottom:3px solid transparent!important;background:transparent!important;border-radius:0!important;padding:16px 1px 14px!important;color:#536677!important;white-space:nowrap;font-size:12px;font-weight:750;flex:0 0 auto;}
.twfi-root .twfi-tabs button:hover{color:#005d55!important;}
.twfi-root .twfi-tabs button.is-active{color:#00675d!important;border-bottom-color:#007f73!important;}
.twfi-root .twfi-content{padding:25px clamp(12px,2.5vw,30px) 32px;min-width:0;}
.twfi-root .twfi-content>*+*{margin-top:17px;}
.twfi-root .twfi-panel{background:#fff;border:1px solid #d9e3e8;border-radius:9px;box-shadow:0 2px 4px #0d314309;min-width:0;overflow:hidden;}
.twfi-root .twfi-panel-head{padding:17px 20px 15px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid #e6ecef;}
.twfi-root .twfi-panel-head h3{font-size:16px;font-weight:800;line-height:1.3;color:#183448;letter-spacing:-.02em;}
.twfi-root .twfi-mini{font-size:11px;color:#657b89;font-weight:650;}
.twfi-root .twfi-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));min-width:0;}
.twfi-root .twfi-metric{padding:22px 20px;display:flex;flex-direction:column;gap:5px;min-width:0;border-bottom:1px solid #e8eef1;border-right:1px solid #e8eef1;}
.twfi-root .twfi-metric>span{color:#4e6577;font-size:12px;font-weight:650;}
.twfi-root .twfi-metric strong{font-size:clamp(18px,2vw,25px);font-weight:780;color:#173144;line-height:1.27;letter-spacing:-.035em;overflow-wrap:anywhere;font-variant-numeric:tabular-nums;}
.twfi-root .twfi-metric small{font-size:11px;color:#65798a;line-height:1.4;}
.twfi-root .twfi-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px;min-width:0;align-items:start;}
.twfi-root .twfi-pair>.twfi-panel{height:100%;}
.twfi-root .twfi-pair>.twfi-panel .twfi-metrics{grid-template-columns:repeat(2,minmax(0,1fr));}
.twfi-root .twfi-context{font-size:12px;color:#4b6575;line-height:1.6;padding:13px 20px;background:#f1f7f8;border-top:1px solid #e1ecee;}
.twfi-root .twfi-context strong{font-weight:800;}
.twfi-root .twfi-empty,.twfi-root .twfi-no-data{padding:38px 20px;text-align:center;color:#5b7080;}
.twfi-root .twfi-no-data{display:flex;gap:12px;align-items:center;justify-content:center;}
.twfi-root .twfi-no-data span{color:#35877d;font-size:20px;}
.twfi-root .twfi-no-data p{max-width:600px;color:#536b7b;}
.twfi-root .twfi-signal-list{padding:6px 20px;}
.twfi-root .twfi-signal{padding:13px 4px 13px 17px;border-bottom:1px solid #e9eef0;position:relative;}
.twfi-root .twfi-signal:before{content:"";width:5px;height:5px;background:#008174;border-radius:50%;position:absolute;top:22px;left:3px;}
.twfi-root .twfi-signal strong{display:block;color:#213b4f;font-size:13px;}
.twfi-root .twfi-signal p{font-size:12px;color:#546e7b;margin-top:2px;}
.twfi-root .twfi-table-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;}
.twfi-root table{width:100%;min-width:470px;border-collapse:collapse;border-spacing:0;margin:0!important;background:white;table-layout:auto;color:#253c4c;font-size:12px;font-variant-numeric:tabular-nums;}
.twfi-root th,.twfi-root td{padding:11px 16px!important;border:0!important;border-bottom:1px solid #e6ecef!important;vertical-align:top;text-align:left;overflow-wrap:break-word;white-space:normal;background:transparent!important;}
.twfi-root thead th{color:#4c6777;font-size:11px;font-weight:800;background:#f3f7f8!important;white-space:nowrap;}
.twfi-root tbody tr:hover{background:#f8fafb;}
.twfi-root tbody th{font-weight:700;color:#2b4454;min-width:135px;}
.twfi-root td{color:#314b5c;}
.twfi-root .twfi-source{padding:11px 20px 13px;border-top:1px solid #e1e9ed;background:#fafcfd;color:#4c6677;}
.twfi-root .twfi-source>summary{font-size:11px;font-weight:800;cursor:pointer;list-style:revert;}
.twfi-root .twfi-source dl{margin-top:10px;display:grid;grid-template-columns:minmax(120px,1fr) minmax(0,2fr);gap:6px 12px;font-size:11px;}
.twfi-root .twfi-source dt{font-weight:800;color:#334c5e;}
.twfi-root .twfi-source dd{margin:0;overflow-wrap:anywhere;}
.twfi-root .twfi-chart{padding:17px 20px;min-width:0;overflow:hidden;}
.twfi-root .twfi-chart svg{max-width:100%;height:auto;min-height:175px;}
.twfi-root .twfi-chart svg line{stroke:#d8e5e9;stroke-width:1.5;}
.twfi-root .twfi-chart svg text{font-family:inherit;font-size:10px;fill:#506e7b;}
.twfi-root .twfi-chart svg .twfi-line{stroke:#008477;}
.twfi-root .twfi-chart svg circle{fill:#fff;stroke:#008477;stroke-width:3;outline:none;}
.twfi-root .twfi-chart-help{font-size:11px;color:#6a7e8c;margin-top:5px;}
.twfi-root .twfi-pair h4{padding:14px 20px 0;font-size:13px;font-weight:750;color:#294457;}
.twfi-root .twfi-chart svg circle:focus-visible{stroke:#1b4d83;stroke-width:5;}
.twfi-root .twfi-esg-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:16px;}
.twfi-root .twfi-esg{border:1px solid #dfe7ea;border-radius:7px;min-width:0;overflow:hidden;}
.twfi-root .twfi-esg h4{padding:12px 14px;border-bottom:1px solid #e7edef;background:#f7fafb;color:#244457;font-size:13px;font-weight:780;}
.twfi-root .twfi-esg>p{padding:14px;color:#566d7c;font-size:12px;}
.twfi-root .twfi-esg-original{padding:14px;max-height:265px;overflow-y:auto;overflow-wrap:anywhere;}
.twfi-root .twfi-esg-original>strong{font-size:11px;color:#487381;}
.twfi-root .twfi-esg-original p{margin-top:8px;font-size:12px;}
.twfi-root .twfi-fine{color:#58717f;font-size:12px;padding:12px 20px;}
.twfi-root .twfi-rank{margin:0 20px 23px;border:1px solid #e0e9ec;border-radius:7px;overflow:hidden;}
.twfi-root .twfi-rank h4{padding:12px 16px;background:#f6fafb;font-size:13px;font-weight:800;}
.twfi-root .twfi-compare-tools{padding:17px 20px;}
.twfi-root .twfi-compare-tools p{font-size:12px;margin-bottom:10px;}
.twfi-root .twfi-compare-tools .twfi-fine{padding:9px 0;}
.twfi-root .twfi-compare-choices{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0;}
.twfi-root .twfi-pill{display:inline-flex;border:1px solid #c8dddd;background:#edf7f5;padding:4px 9px;border-radius:4px;color:#246257;font-size:11px;font-weight:750;}
.twfi-root .twfi-btn{background:#00796d!important;border:1px solid #00796d!important;color:#fff!important;padding:9px 12px;margin:4px 0;}
.twfi-root .twfi-btn-muted{background:#fff!important;color:#255d60!important;border-color:#a9bdc1!important;}
.twfi-root .twfi-footer{background:#eef3f6;border-top:1px solid #d5e0e5;padding:25px clamp(16px,3.2vw,40px);display:flex;align-items:flex-start;justify-content:space-between;gap:25px;}
.twfi-root .twfi-footer>div:first-child{max-width:900px;}
.twfi-root .twfi-footer strong{font-size:12px;color:#183a4b;}
.twfi-root .twfi-footer p,.twfi-root .twfi-footer details{color:#536b7a;font-size:11px;line-height:1.65;margin-top:8px;}
.twfi-root .twfi-footer summary{font-weight:800;cursor:pointer;color:#20566a;}
.twfi-root .twfi-footer-name{font-size:11px;font-weight:800;letter-spacing:.09em;text-align:right;color:#2d5264;white-space:nowrap;}
.twfi-root .twfi-footer-name small{display:block;font-size:10px;font-weight:600;letter-spacing:.045em;color:#647c87;margin-top:5px;}
.twfi-root abbr{cursor:help;text-decoration:none;border:0;color:#06786e;}
@media(max-width:850px){
 .twfi-root .twfi-mast-right{min-width:150px;padding-left:17px;}
 .twfi-root .twfi-pair{grid-template-columns:1fr;}
 .twfi-root .twfi-metrics{grid-template-columns:repeat(2,minmax(0,1fr));}
 .twfi-root .twfi-index{min-width:115px;}
 .twfi-root .twfi-footer{flex-direction:column;}.twfi-root .twfi-footer-name{text-align:left;}
}
@media(max-width:540px){
 .twfi-root{border-radius:0;font-size:13px;}
 .twfi-root .twfi-mast{padding:23px 16px 21px;display:block;}
 .twfi-root .twfi-mast p{font-size:12px;}
 .twfi-root .twfi-mast-right{margin-top:20px;display:block;border:0;border-top:1px solid #33576a;padding:11px 0 0;text-align:left;}
 .twfi-root .twfi-mast-right strong{font-size:19px;margin:0 7px;}.twfi-root .twfi-mast-right small{display:block;margin-top:3px;}
 .twfi-root .twfi-toolbar{display:block;padding:17px 14px;}
 .twfi-root .twfi-field input{font-size:12px;}.twfi-root .twfi-field button{padding:0 13px;}
 .twfi-root .twfi-index{flex-direction:row;align-items:center;justify-content:flex-start;gap:9px;margin-top:12px;flex-wrap:wrap;}
 .twfi-root .twfi-index strong{font-size:17px;}.twfi-root .twfi-index small{font-size:10px;}
 .twfi-root .twfi-headline{display:block;padding:17px 15px;}
 .twfi-root .twfi-headline h3{font-size:23px;}.twfi-root .twfi-head-meta{border:0;border-top:1px solid #dce6ea;padding:12px 0 0;margin-top:13px;}
 .twfi-root .twfi-tabs{padding:0 15px;gap:19px;}.twfi-root .twfi-tabs button{padding:14px 1px 13px!important;font-size:12px;}
 .twfi-root .twfi-content{padding:13px 9px 21px;}.twfi-root .twfi-panel-head{padding:13px 14px;}
 .twfi-root .twfi-metric{padding:15px 12px;}.twfi-root .twfi-metric strong{font-size:17px;}.twfi-root .twfi-metric>span{font-size:11px;}
 .twfi-root .twfi-esg-grid{grid-template-columns:1fr;padding:10px;}
 .twfi-root .twfi-context,.twfi-root .twfi-source{padding:11px 13px;}
 .twfi-root .twfi-signal-list{padding:5px 12px;}.twfi-root .twfi-chart{padding:10px;}
 .twfi-root .twfi-footer{padding:20px 14px;}
}
@media(max-width:330px){.twfi-root .twfi-metric strong{font-size:15px;}.twfi-root .twfi-field button{padding:0 10px;}}
@media(prefers-reduced-motion:reduce){.twfi-root *{scroll-behavior:auto!important;transition:none!important;}}

/* v0.2.0 — corporate financial research system; hard isolation against theme !important styles. */
.twfi-root {
  --twfi-ink:#182c3d; --twfi-mute:#536779; --twfi-deep:#152a39;
  --twfi-accent:#08756c; --twfi-line:#dce5e9; --twfi-bg:#f6f8fa;
  color-scheme:light!important; background:#f6f8fa!important;
  color:#182c3d!important; box-shadow:0 12px 36px rgba(18,44,60,.055);
  -webkit-text-size-adjust:100%; overflow:hidden!important;
}
.twfi-root,.twfi-root div,.twfi-root span,.twfi-root section,.twfi-root article,.twfi-root header,.twfi-root footer,
.twfi-root nav,.twfi-root button,.twfi-root input,.twfi-root table,.twfi-root details {min-width:0;}
.twfi-root :where(h2,h3,h4,p,span,small,strong,th,td,a,button,summary,label) {text-shadow:none!important;}
.twfi-root .twfi-mast {
  background:linear-gradient(113deg,#162c3d 0%,#102b3d 60%,#183e45 100%)!important;
  color:#f8fcff!important;
  padding:clamp(22px,3.5vw,40px)!important;
  position:relative;
  align-items:flex-start;
}
.twfi-root .twfi-mast:after {content:"";display:block;height:3px;position:absolute;bottom:0;left:0;right:0;background:linear-gradient(90deg,#087c72,#62b7a7,#b3dacf);}
.twfi-root .twfi-mast h2 {color:#fff!important;font-size:clamp(25px,3.25vw,36px)!important;line-height:1.18!important;
  margin:13px 0 9px!important;font-weight:800!important;letter-spacing:-.028em!important;text-decoration:none!important;}
.twfi-root .twfi-mast p {color:#e0eaf0!important;font-size:clamp(13px,1.6vw,15px)!important;line-height:1.6!important;}
.twfi-root .twfi-kicker {font-size:10px!important;color:#b5d6d7!important;letter-spacing:.12em!important;}
.twfi-root .twfi-mast-right {border-color:#4a6671!important;min-width:174px;}
.twfi-root .twfi-mast-right>span {color:#cadfe7!important;}
.twfi-root .twfi-mast-right strong {color:#fff!important;}
.twfi-root .twfi-mast-right small {color:#cadce4!important;line-height:1.45;}
.twfi-root .twfi-toolbar {background:#fff!important;gap:15px!important;align-items:end!important;padding:22px clamp(15px,3.2vw,40px)!important;}
.twfi-root .twfi-find>label {color:#32495b!important;font-size:13px!important;}
.twfi-root .twfi-field {border:1px solid #b7c9d1!important;background:white!important;border-radius:9px!important;
  box-shadow:0 2px 4px rgba(21,45,64,.035)!important;}
.twfi-root .twfi-field:focus-within {border-color:#067c71!important;outline:2px solid #b7e2dd!important;outline-offset:1px;}
.twfi-root .twfi-field input {height:49px!important;min-width:0!important;font-size:14px!important;color:#183346!important;}
.twfi-root .twfi-field button {border-radius:0!important;min-height:49px!important;background:#08756c!important;color:#fff!important;
  font-size:13px!important;font-weight:750!important;white-space:nowrap!important;}
.twfi-root .twfi-field button:hover {background:#065d55!important;}
.twfi-root .twfi-index {align-items:flex-end!important;}
.twfi-root .twfi-index span {color:#516778!important;font-size:12px!important;}
.twfi-root .twfi-index strong {color:#1a3347!important;}
.twfi-root .twfi-index small {font-size:11px!important;color:#647988!important;}
.twfi-root .twfi-notice {border-left:4px solid #127e77!important;background:#eaf5f4!important;color:#184b47!important;
  border-bottom:1px solid #d4e7e4!important;font-weight:550!important;}
.twfi-root .twfi-notice a {color:#095f57!important;font-weight:700!important;}
.twfi-root .twfi-headline {background:#fff!important;padding:20px clamp(15px,3.2vw,40px)!important;align-items:center!important;gap:16px!important;}
.twfi-root .twfi-company-title {flex:1 1 auto;min-width:0;}
.twfi-root .twfi-headline h3 {color:#173044!important;font-weight:800!important;letter-spacing:-.025em!important;
  font-size:clamp(22px,2.8vw,30px)!important;margin:7px 0!important;overflow-wrap:anywhere;}
.twfi-root .twfi-headline h3 small {background:#e9f1f2!important;color:#264e55!important;font-weight:750!important;}
.twfi-root .twfi-head-tools {display:flex;gap:17px;align-items:center;flex:0 1 auto;min-width:0;}
.twfi-root .twfi-favorite {border:1px solid #bdcdd3!important;color:#23465b!important;background:#fff!important;
  border-radius:7px!important;padding:10px 13px!important;white-space:nowrap;font-size:12px!important;}
.twfi-root .twfi-favorite[aria-pressed="true"] {background:#eff8f4!important;border-color:#8aada1!important;color:#0d5d53!important;}
.twfi-root .twfi-favorite:hover {background:#eff6f8!important;}
.twfi-root .twfi-head-meta {flex:0 0 auto;min-width:137px!important;border-color:#d9e4e8!important;}
.twfi-root .twfi-head-meta strong {color:#223f50!important;font-size:16px!important;}
.twfi-root .twfi-tab-guide {padding:9px clamp(15px,3.2vw,40px);background:#f8fafb;border-bottom:1px solid #e5ecef;
  color:#647687;font-size:11px;font-weight:650;}
.twfi-root .twfi-tabs {background:#fff!important;gap:8px!important;padding:0 clamp(13px,2.8vw,33px)!important;
  scrollbar-color:#b9cbc9 #f8fafb;scrollbar-width:thin;max-width:100%!important;}
.twfi-root .twfi-tabs button {padding:15px 12px 12px!important;color:#526779!important;font-size:12px!important;
  min-height:47px!important;border-top:0!important;border-left:0!important;border-right:0!important;
  line-height:1.3!important;transition:background .15s ease,border-color .15s ease!important;}
.twfi-root .twfi-tabs button:hover {background:#f3f8f8!important;color:#076c62!important;}
.twfi-root .twfi-tabs button.is-active {background:#f0f7f6!important;border-bottom-color:#08756c!important;
  color:#095f57!important;}
.twfi-root .twfi-content {background:#f6f8fa!important;padding:clamp(14px,2.2vw,28px)!important;overflow:hidden!important;}
.twfi-root .twfi-content>*+* {margin-top:14px!important;}
.twfi-root .twfi-panel {background:#fff!important;border-color:#d9e3e8!important;border-radius:10px!important;
  box-shadow:0 2px 12px rgba(23,47,67,.035)!important;min-width:0!important;}
.twfi-root .twfi-panel-head {padding:17px clamp(15px,2.3vw,25px)!important;background:#fff!important;}
.twfi-root .twfi-panel-head h3 {color:#1a2d3b!important;font-size:16px!important;font-weight:800!important;}
.twfi-root .twfi-mini {color:#607282!important;}
.twfi-root .twfi-metrics {grid-template-columns:repeat(3,minmax(0,1fr))!important;}
.twfi-root .twfi-metric {padding:18px clamp(12px,2vw,22px)!important;gap:6px!important;}
.twfi-root .twfi-metric>span {color:#516879!important;font-size:12px!important;}
.twfi-root .twfi-metric>strong {color:#172e42!important;font-size:clamp(17px,2.1vw,24px)!important;font-variant-numeric:tabular-nums!important;}
.twfi-root .twfi-metric small {color:#637789!important;}
.twfi-root .twfi-context {color:#496777!important;background:#f3f8f9!important;padding:12px clamp(13px,2vw,22px)!important;}
.twfi-root .twfi-no-data {padding:22px 18px!important;justify-content:flex-start!important;text-align:left!important;
  align-items:flex-start!important;gap:12px!important;min-height:0!important;}
.twfi-root .twfi-empty-mark {background:#e8eff2;color:#3e606d!important;width:23px;min-width:23px;
  height:23px;display:grid;place-items:center;border-radius:50%;font-size:13px!important;font-weight:850!important;}
.twfi-root .twfi-gap {margin:14px!important;border:1px solid #dce6e9!important;background:#f8fafb!important;
  border-radius:8px!important;padding:14px 16px!important;color:#354b5a!important;}
.twfi-root .twfi-gap-label {display:block;color:#2d4959!important;font-weight:750!important;font-size:12px!important;margin-bottom:3px;}
.twfi-root .twfi-gap p {color:#516877!important;font-size:12px!important;line-height:1.65!important;}
.twfi-root .twfi-gap a {font-weight:700!important;display:inline-block;margin-top:8px;font-size:12px;}
.twfi-root .twfi-coverage-explainer {border:1px solid #bed9d7;background:#f0f8f7;border-radius:9px;
  padding:15px 18px;margin:13px 0!important;color:#24514d;}
.twfi-root .twfi-coverage-explainer strong {display:block;color:#144f49;font-size:13px;font-weight:800;}
.twfi-root .twfi-coverage-explainer p {font-size:12px;margin:4px 0!important;color:#355955;}
.twfi-root .twfi-coverage-explainer a {display:inline-block;margin-top:7px;font-weight:700;}
.twfi-root .twfi-readiness {background:#fff!important;border-bottom:1px solid #dce5e9!important;
  padding:14px clamp(15px,3.2vw,40px)!important;}
.twfi-root .twfi-ready-heading {display:flex;justify-content:space-between;gap:15px;align-items:start;margin-bottom:10px;}
.twfi-root .twfi-ready-heading>div {display:flex;flex-direction:column;gap:1px;}
.twfi-root .twfi-ready-heading strong {font-size:13px;color:#193847!important;}
.twfi-root .twfi-ready-heading span {font-size:11px;color:#657887!important;}
.twfi-root .twfi-ready-heading details {max-width:380px;font-size:12px;color:#476173!important;}
.twfi-root .twfi-ready-heading summary {cursor:pointer;color:#0c665e!important;font-weight:750!important;text-align:right;}
.twfi-root .twfi-ready-heading details p {padding:10px 0!important;color:#48616f!important;}
.twfi-root .twfi-data-chips {display:flex;flex-wrap:wrap;gap:7px;}
.twfi-root .twfi-data-chip {padding:5px 9px;display:inline-flex;align-items:center;gap:4px;
  border-radius:5px;font-size:11px;font-weight:730!important;white-space:nowrap;}
.twfi-root .twfi-data-chip.is-ready {background:#e7f4ed;color:#14594c!important;border:1px solid #cce4d7;}
.twfi-root .twfi-data-chip.is-pending {background:#f5f6f8;color:#5a6b7a!important;border:1px solid #dfe5e9;}
.twfi-root .twfi-data-chip.is-empty {background:#fff7e9;color:#855a22!important;border:1px solid #edd9b4;}
.twfi-root .twfi-watchbar {display:flex;align-items:center;flex-wrap:wrap;gap:10px;
  padding:9px clamp(15px,3.2vw,40px)!important;background:#f3f8f7!important;border-bottom:1px solid #dfebe8;}
.twfi-root .twfi-watch-label {color:#28554f!important;font-size:11px;font-weight:800!important;}
.twfi-root .twfi-watch-items {display:flex;flex-wrap:wrap;gap:6px;}
.twfi-root .twfi-watch-items button {font-size:11px!important;font-weight:750!important;border:1px solid #c7d9d6!important;
  background:#fff!important;color:#23564d!important;border-radius:15px!important;padding:5px 9px!important;}
.twfi-root .twfi-watch-detail {color:#647d7a!important;font-size:10px!important;}
.twfi-root .twfi-table-scroll {min-width:0!important;max-width:100%!important;overflow-x:auto!important;
  overscroll-behavior-inline:contain!important;scrollbar-width:thin;}
.twfi-root .twfi-table-scroll table {border-collapse:collapse!important;min-width:490px;width:100%!important;}
.twfi-root .twfi-table-scroll th,.twfi-root .twfi-table-scroll td {color:#263f51!important;vertical-align:top!important;}
.twfi-root .twfi-chart {max-width:100%!important;min-width:0!important;}
.twfi-root .twfi-chart svg {display:block!important;max-width:100%!important;}
.twfi-root .twfi-compact-note {padding:20px;font-size:12px;color:#5e7785!important;line-height:1.6!important;}
.twfi-root .twfi-footer {background:#eef3f5!important;color:#354e5f!important;}
.twfi-root .twfi-footer p,.twfi-root .twfi-footer details {color:#486472!important;}
@media (max-width:940px) {
  .twfi-root .twfi-head-tools {flex-direction:column-reverse;align-items:flex-end;gap:8px;}
  .twfi-root .twfi-head-meta {border-left:0!important;padding-left:0!important;align-items:flex-end;text-align:right;}
  .twfi-root .twfi-pair {grid-template-columns:1fr!important;}
  .twfi-root .twfi-pair>.twfi-panel {height:auto!important;}
}
@media (max-width:600px) {
  .twfi-root {border-radius:8px!important;font-size:13px!important;}
  .twfi-root .twfi-mast {padding:23px 17px!important;display:block!important;}
  .twfi-root .twfi-mast h2 {font-size:26px!important;line-height:1.14!important;}
  .twfi-root .twfi-mast p {font-size:13px!important;}
  .twfi-root .twfi-mast-right {padding:12px 0 0!important;border-left:0!important;
    border-top:1px solid #40606b!important;margin-top:17px!important;text-align:left!important;
    min-width:0!important;flex-direction:row!important;flex-wrap:wrap;align-items:baseline;gap:6px 10px!important;}
  .twfi-root .twfi-mast-right strong {font-size:17px!important;}
  .twfi-root .twfi-mast-right small {flex-basis:100%;}
  .twfi-root .twfi-toolbar {padding:16px!important;display:block!important;}
  .twfi-root .twfi-index {margin-top:13px!important;display:flex!important;align-items:center!important;
    justify-content:space-between!important;flex-direction:row!important;gap:10px!important;}
  .twfi-root .twfi-index strong {font-size:18px!important;}
  .twfi-root .twfi-index small {max-width:44%;}
  .twfi-root .twfi-field button {padding:0 14px!important;min-width:75px!important;}
  .twfi-root .twfi-field input {font-size:13px!important;}
  .twfi-root .twfi-headline {padding:17px!important;display:block!important;}
  .twfi-root .twfi-headline h3 {font-size:23px!important;}
  .twfi-root .twfi-head-tools {flex-direction:row;align-items:center;justify-content:space-between;margin-top:12px;}
  .twfi-root .twfi-head-meta {align-items:flex-end!important;}
  .twfi-root .twfi-favorite {padding:8px 10px!important;font-size:11px!important;}
  .twfi-root .twfi-tab-guide {padding:8px 15px!important;font-size:10px!important;}
  .twfi-root .twfi-tabs {padding:0 9px!important;gap:2px!important;}
  .twfi-root .twfi-tabs button {padding:12px 10px!important;font-size:12px!important;min-height:45px!important;}
  .twfi-root .twfi-ready-heading {display:block!important;}
  .twfi-root .twfi-ready-heading details {margin-top:9px!important;}
  .twfi-root .twfi-ready-heading summary {text-align:left!important;}
  .twfi-root .twfi-content {padding:12px!important;}
  .twfi-root .twfi-panel-head {padding:13px 14px!important;}
  .twfi-root .twfi-metrics {grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .twfi-root .twfi-metric {padding:14px 12px!important;}
  .twfi-root .twfi-metric strong {font-size:17px!important;}
  .twfi-root .twfi-metric>span {font-size:11px!important;}
  .twfi-root .twfi-metric small {font-size:10px!important;}
  .twfi-root .twfi-pair>.twfi-panel .twfi-metrics {grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .twfi-root .twfi-coverage-explainer {padding:12px 14px!important;}
}
@media (max-width:350px) {
  .twfi-root .twfi-metrics {grid-template-columns:1fr!important;}
  .twfi-root .twfi-head-tools {align-items:flex-start!important;}
  .twfi-root .twfi-head-meta {min-width:0!important;}
  .twfi-root .twfi-field>span {padding:0 5px 0 7px!important;}
  .twfi-root .twfi-field button {padding:0 9px!important;min-width:67px!important;}
}

/* v0.2.1: disclosure availability in a calm institutional palette. */
.twfi-root .twfi-data-chip.is-pending { background:#fff7eb; border-color:#e8cba2; color:#6a4a21!important; }
.twfi-root .twfi-gap-label { font-weight:750; }
.twfi-root .twfi-gap { border-inline-start:3px solid #b7cad3; }
.twfi-root .twfi-source summary { cursor:pointer; }
.twfi-root .twfi-source summary:focus-visible,
.twfi-root .twfi-tabs button:focus-visible,
.twfi-root .twfi-find input:focus-visible { outline:3px solid #16807c; outline-offset:3px; }
@media(max-width:412px){
 .twfi-root .twfi-ready-heading { gap:12px; }
 .twfi-root .twfi-data-chip { max-width:100%; }
}

/* v0.2.2: restrained financial research evidence and comparable-period panel */
.twfi-root .twfi-derived {margin:16px clamp(12px,2.3vw,23px);padding:16px;border:1px solid #cbdae0;background:#f5f8fa;border-radius:9px;color:#1d3444;}
.twfi-root .twfi-derived>strong {display:block;font-size:14px;font-weight:800;color:#162e41;letter-spacing:0;}
.twfi-root .twfi-derived>p {font-size:13px;line-height:1.55;color:#475d6b;margin:7px 0 12px;}
.twfi-root .twfi-derived .twfi-metrics {background:#fff;border:1px solid #e4ebee;border-radius:7px;overflow:hidden;}
.twfi-root .twfi-derived .twfi-metric {min-width:0;}
.twfi-root .twfi-panel>.twfi-fine {padding:12px 18px;color:#465b68;line-height:1.5;margin:0;}
.twfi-root .twfi-panel>.twfi-gap {margin:15px;}
@media(max-width:380px) { .twfi-root .twfi-derived {margin:12px 10px;padding:12px;} }

/* v0.2.3: compact institutional research brief / verified quality workspace */
.twfi-root .twfi-research-brief {display:flex;align-items:center;justify-content:space-between;gap:18px;background:#eaf2f5;border:1px solid #d1e0e6;border-left:4px solid #136f6a;border-radius:9px;padding:15px 19px;margin:0 0 13px;color:#183447!important;}
.twfi-root .twfi-research-brief .twfi-eyebrow {display:block;color:#4a6979!important;font-size:10px!important;letter-spacing:1px;font-weight:800;}
.twfi-root .twfi-research-brief strong {display:block;color:#173248!important;font-size:17px!important;margin-top:3px;}
.twfi-root .twfi-research-brief p {font-size:12px!important;line-height:1.45;color:#496573!important;margin:5px 0 0!important;}
.twfi-root .twfi-research-brief .twfi-btn {flex-shrink:0;white-space:normal;text-align:center;border:1px solid #b1ced0!important;color:#125956!important;background:#fff!important;padding:9px 13px!important;font-size:12px!important;font-weight:750!important;border-radius:6px!important;}
.twfi-root .twfi-quality-head {display:flex;align-items:flex-start;gap:13px;margin:15px;background:#ecf5f2;padding:16px;border:1px solid #c9dfd5;border-radius:9px;}
.twfi-root .twfi-quality-head.is-review {background:#fff7ee;border-color:#edd4b1;}
.twfi-root .twfi-quality-icon {border-radius:50%;display:grid;place-items:center;flex-shrink:0;width:27px;height:27px;color:#13534d!important;background:#d5e9df;font-weight:800;}
.twfi-root .twfi-quality-head strong {color:#143d3a!important;font-size:14px!important;}
.twfi-root .twfi-quality-head p {font-size:12px!important;margin:5px 0!important;color:#455f68!important;line-height:1.6;}
.twfi-root .twfi-definition-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:14px;}
.twfi-root .twfi-definition-grid>div {border:1px solid #dce5eb;border-radius:8px;background:#fbfcfd;padding:14px;min-width:0;}
.twfi-root .twfi-definition-grid h4 {font-size:13px!important;line-height:1.4;color:#1b3949!important;margin:0 0 5px!important;font-weight:800!important;}
.twfi-root .twfi-definition-grid p {color:#4b6271!important;font-size:12px!important;line-height:1.6!important;margin:0!important;}
.twfi-root .twfi-earnings-status {margin:0 15px 12px;padding:11px 13px;border-left:3px solid #b2c9cf;background:#f6f9fa;color:#385164!important;font-size:12px!important;line-height:1.5!important;}
.twfi-root .twfi-audit-status {font-size:12px!important;font-weight:650!important;white-space:normal!important;}
.twfi-root .twfi-panel .twfi-table-scroll th,.twfi-root .twfi-panel .twfi-table-scroll td {font-variant-numeric:tabular-nums;}
.twfi-root button:focus-visible,.twfi-root a:focus-visible,.twfi-root summary:focus-visible {outline:3px solid #16847e!important;outline-offset:3px!important;}
@media(max-width:600px) {
 .twfi-root .twfi-research-brief {display:block;padding:13px!important;}
 .twfi-root .twfi-research-brief .twfi-btn {display:block!important;margin-top:10px!important;width:100%;}
 .twfi-root .twfi-definition-grid {grid-template-columns:1fr;gap:9px;padding:12px;}
 .twfi-root .twfi-quality-head {margin:11px;padding:12px;}
}

/* v0.2.4 — business-style peer research, small local exports, responsive controls. */
.twfi-root .twfi-company-actions {display:flex;flex-wrap:wrap;gap:7px;align-items:center;justify-content:flex-end;min-width:0;}
.twfi-root .twfi-company-actions button,.twfi-root .twfi-export-button {
  border:1px solid #b6c9d0!important;padding:9px 11px!important;background:#fff!important;
  color:#164b59!important;font-size:12px!important;font-weight:750!important;border-radius:6px!important;
  min-height:38px!important;line-height:1.2!important;box-shadow:none!important;
}
.twfi-root .twfi-company-actions button:hover,.twfi-root .twfi-export-button:hover {
  background:#eaf5f4!important;border-color:#387f79!important;
}
.twfi-root .twfi-copy-status {font-size:11px;color:#246a59;flex-basis:100%;text-align:right;}
.twfi-root .twfi-copy-status:empty {display:none;}
.twfi-root .twfi-peer-intro {padding:18px 20px;background:#f7fafb;}
.twfi-root .twfi-peer-intro strong {font-size:17px;color:#183a4d;display:block;}
.twfi-root .twfi-peer-intro>span {display:block;font-size:12px;font-weight:750;color:#266e6b;margin-top:5px;}
.twfi-root .twfi-peer-intro p {color:#4b6372;font-size:12px;max-width:740px;margin-top:10px;}
.twfi-root .twfi-export-row {display:flex;justify-content:space-between;align-items:center;gap:12px;
 padding:12px 16px;background:#fff;border:1px solid #d9e3e8;border-radius:8px;}
.twfi-root .twfi-export-row>span {color:#4c6675;font-size:12px;}
.twfi-root .twfi-export-button {white-space:normal;flex-shrink:0;}
.twfi-root .twfi-panel .twfi-peer-intro {min-width:0;overflow-wrap:anywhere;}
@media(max-width:600px){
  .twfi-root .twfi-company-actions {justify-content:flex-start;width:100%;}
  .twfi-root .twfi-copy-status {text-align:left;}
  .twfi-root .twfi-export-row {display:block;}
  .twfi-root .twfi-export-row>span {display:block;margin-bottom:10px;}
  .twfi-root .twfi-export-button {width:100%;}
}
@media(max-width:380px){
  .twfi-root .twfi-company-actions button {flex:1 1 auto;}
}
.twfi-root .twfi-brief-actions {display:flex;flex-direction:column;gap:6px;flex:0 0 188px;}
.twfi-root .twfi-brief-actions .twfi-btn {width:100%;}
@media(max-width:600px){.twfi-root .twfi-brief-actions {margin-top:10px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}.twfi-root .twfi-research-brief .twfi-brief-actions .twfi-btn {margin-top:0!important;}}
@media(max-width:345px){.twfi-root .twfi-brief-actions {grid-template-columns:1fr;}}

/* v0.3.0 — disciplined financial-period workspace and genuinely matched comparison. */
.twfi-root .twfi-period-controls,
.twfi-root .twfi-compare-mode {
  display:flex;align-items:center;flex-wrap:wrap;gap:10px 14px;
  padding:14px 19px;background:#f3f8fa;border-bottom:1px solid #d7e4e9;
}
.twfi-root .twfi-period-controls label,
.twfi-root .twfi-compare-mode label {
  font-size:12px;font-weight:800;color:#1b3c4c;min-width:145px;
}
.twfi-root .twfi-period-controls select,
.twfi-root .twfi-compare-mode select {
  min-width:0;max-width:100%;padding:10px 35px 10px 12px;min-height:42px;
  font-size:13px;font-weight:650;color:#153b4d!important;background:#fff!important;
  border:1px solid #9db8c4!important;border-radius:6px!important;box-shadow:none!important;
}
.twfi-root .twfi-period-controls>span {color:#4c6673;font-size:11px;flex:1;}
.twfi-root .twfi-compare-selected {
  display:inline-flex;align-items:center;max-width:100%;min-width:0;gap:7px;
  padding:5px 6px 5px 10px;background:#eaf3f4;border:1px solid #c9dcdd;
  color:#1d4855;border-radius:5px;font-weight:700;font-size:12px;
}
.twfi-root .twfi-compare-selected button {
  min-width:28px;min-height:28px;border:1px solid #a7c0c9!important;
  border-radius:4px!important;background:#fff!important;color:#173a4c!important;
  font-weight:800;font-size:18px;padding:1px 5px!important;
}
.twfi-root .twfi-compare-selected button:hover {background:#e3eeee!important;}
.twfi-root .twfi-panel .twfi-period-controls:focus-within,
.twfi-root .twfi-compare-mode:focus-within {border-color:#7aa9a5;}
.twfi-root select:focus-visible {outline:3px solid #239c90!important;outline-offset:2px;}
.twfi-root .twfi-period-controls+ .twfi-metrics {border-top:0;}
.twfi-root .twfi-compare-tools {min-width:0;}
.twfi-root .twfi-compare-choices {display:flex;flex-wrap:wrap;gap:8px;}
@media(max-width:600px){
  .twfi-root .twfi-period-controls,.twfi-root .twfi-compare-mode{display:grid;grid-template-columns:minmax(0,1fr);gap:7px;padding:13px;}
  .twfi-root .twfi-period-controls select,.twfi-root .twfi-compare-mode select{width:100%;}
  .twfi-root .twfi-compare-selected{flex:1 1 100%;justify-content:space-between;}
  .twfi-root .twfi-period-controls>span{line-height:1.4;}
}
.twfi-root .twfi-history-export{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:9px;
 padding:11px 17px;border-bottom:1px solid #e2e9ed;background:#fff;}
.twfi-root .twfi-history-export>span{font-size:11px;color:#567081;}
@media(max-width:500px){.twfi-root .twfi-history-export{display:block;}.twfi-root .twfi-history-export button{width:100%;}.twfi-root .twfi-history-export>span{display:block;margin-top:7px;}}

/* v0.3.2 — compact country identity and intentional research search controls. */
.twfi-root .twfi-mast .twfi-mast-title{display:flex;align-items:flex-start;gap:12px;min-width:0;flex-wrap:nowrap;color:#fff!important;}
.twfi-root .twfi-flag{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:38px;height:26px;padding:1px;background:#fff;border:1px solid #8ba7bc;border-radius:3px;box-shadow:0 2px 6px #07172555;margin-top:3px;line-height:0;}
.twfi-root .twfi-flag svg{display:block;width:36px;height:24px;}
.twfi-root .twfi-mast-title>span:last-child{min-width:0;overflow-wrap:normal;}
.twfi-root .twfi-quick-search{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:9px;font-size:11px;color:#526d7c;}
.twfi-root .twfi-quick-search>span{font-weight:700;}
.twfi-root .twfi-quick-search button{padding:5px 9px;border:1px solid #c5d6dd!important;background:#f4f8fa!important;color:#27465a!important;border-radius:5px!important;font-size:11px!important;min-height:30px;}
.twfi-root .twfi-quick-search button:hover{background:#e3f2f0!important;border-color:#6bb9ac!important;}
.twfi-root .twfi-results button.twfi-result-selected{background:#e2f4f0!important;box-shadow:inset 3px 0 #00796d;}
@media(max-width:450px){.twfi-root .twfi-mast-title{gap:9px!important;}.twfi-root .twfi-flag{width:32px;height:23px;}.twfi-root .twfi-flag svg{width:30px;height:20px;}.twfi-root .twfi-quick-search{gap:5px;}.twfi-root .twfi-quick-search button{font-size:10px!important;}}
