.stock-analysis-shell{display:flex;flex-direction:column;gap:16px}
.stock-analysis-hero{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding:22px;border-radius:14px;background:linear-gradient(135deg,#182848,#294f78);color:#fff}
.stock-analysis-hero h2{margin:0 0 8px}.stock-analysis-hero p{margin:0;color:#d9e7f5;font-size:13px}
#stock-analysis-updated{font-size:12px;color:#d9e7f5;white-space:nowrap}
.stock-analysis-toolbar{display:flex;gap:8px;align-items:center;padding:14px;flex-wrap:wrap;overflow:visible}
.stock-analysis-toolbar select,.stock-analysis-toolbar input{height:36px;border:1px solid #d8dde6;border-radius:7px;padding:0 10px;background:#fff}
.stock-analysis-toolbar select{min-width:220px}.stock-analysis-toolbar input{width:210px}
.security-analysis-search{position:relative;width:260px}.security-analysis-search input{width:100%;box-sizing:border-box}.security-analysis-suggestions{position:absolute;z-index:1000;top:calc(100% + 5px);left:0;width:380px;max-width:min(380px,calc(100vw - 32px));max-height:360px;overflow-y:auto;border:1px solid #d8dde6;border-radius:9px;background:#fff;box-shadow:0 10px 28px rgba(31,45,61,.16)}
.security-analysis-suggestion{display:flex;width:100%;gap:10px;align-items:center;padding:10px 12px;border:0;border-bottom:1px solid #edf0f4;background:#fff;color:#202636;text-align:left;cursor:pointer}.security-analysis-suggestion:last-child{border-bottom:0}.security-analysis-suggestion:hover,.security-analysis-suggestion.active{background:#eef4fa}.security-analysis-suggestion-type{flex:0 0 auto;padding:2px 6px;border-radius:9px;background:#e7f0fa;color:#245f9e;font-size:11px}.security-analysis-suggestion-type.bond{background:#e9f5ef;color:#176b55}.security-analysis-suggestion-main{min-width:0;flex:1}.security-analysis-suggestion-main strong{display:block;font-size:13px}.security-analysis-suggestion-main small{display:block;margin-top:2px;color:#7b8493;font-size:11px}.security-analysis-suggestion-empty{padding:13px;color:#7b8493;font-size:12px;text-align:center}
.stock-analysis-message{padding:34px;text-align:center;border:1px dashed #ccd3dd;border-radius:12px;color:#777;background:#fff}
.stock-analysis-summary{display:flex;gap:12px;align-items:baseline;flex-wrap:wrap;padding:18px;border-radius:12px;background:#fff;border:1px solid #e7e9ee}
.stock-analysis-summary strong{font-size:23px}.stock-analysis-summary span{color:#666;font-size:13px}
.stock-analysis-view-tabs{display:flex;gap:4px;margin-top:12px;padding:4px;border:1px solid #e2e6ec;border-radius:9px;background:#f4f6f9;width:max-content;max-width:100%;overflow-x:auto}.stock-analysis-view-tabs button{padding:8px 18px;border:0;border-radius:6px;background:transparent;color:#526173;cursor:pointer;white-space:nowrap}.stock-analysis-view-tabs button.selected{background:#294f78;color:#fff}
.stock-analysis-section{margin-top:14px;padding:18px;border:1px solid #e7e9ee;border-radius:12px;background:#fff}
.stock-analysis-section h3{margin:0 0 14px;font-size:16px;color:#202636}
.stock-analysis-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}
.stock-analysis-info-group{margin-top:18px}.stock-analysis-info-group:first-child{margin-top:0}.stock-analysis-info-group h4{margin:0 0 9px;padding-bottom:7px;border-bottom:1px solid #e8ebf0;color:#526173;font-size:13px;font-weight:600}
.stock-analysis-metric{padding:12px;border-radius:9px;background:#f7f9fc;border:1px solid #edf0f5}
.stock-analysis-metric span{display:block;color:#777;font-size:12px;margin-bottom:5px}.stock-analysis-metric strong{font-size:17px;color:#222}.stock-analysis-metric small{display:block;margin-top:5px;color:#999;line-height:1.45}
.stock-analysis-note{padding:10px 12px;margin-bottom:12px;background:#fff8e6;border-left:3px solid #e7a726;color:#745b20;font-size:12px;line-height:1.6}
.stock-analysis-table{width:100%;border-collapse:collapse;font-size:13px}.stock-analysis-table th,.stock-analysis-table td{padding:9px;border-bottom:1px solid #eee;text-align:left}.stock-analysis-table th{color:#666;background:#fafafa}
.stock-analysis-chart{position:relative;overflow-x:auto;overflow-y:hidden;margin-bottom:14px;padding:12px 8px 4px;border:1px solid #edf0f5;border-radius:9px;background:#fafbfc}.stock-analysis-chart svg{display:block;max-width:none;height:330px}.stock-analysis-chart text{font-family:inherit;fill:#697386;font-size:11px}.stock-analysis-chart .grid{stroke:#e5e9ef;stroke-width:1}.stock-analysis-chart .axis{stroke:#aeb7c3;stroke-width:1}.stock-analysis-chart .profit{fill:#67b463}.stock-analysis-chart .dividend{fill:#ef6b67}.stock-analysis-chart .ratio{fill:none;stroke:#348bd4;stroke-width:2}.stock-analysis-chart .ratio-dot{fill:#348bd4}.stock-analysis-chart-legend{display:flex;justify-content:center;gap:20px;flex-wrap:wrap;margin-bottom:8px;color:#667085;font-size:12px}.stock-analysis-chart-legend i{display:inline-block;width:18px;height:9px;margin-right:5px;border-radius:2px}.stock-analysis-chart-empty{padding:50px;text-align:center;color:#888}
.stock-analysis-chart .year-hit{fill:transparent;cursor:crosshair}.stock-analysis-chart .year-hit:hover{fill:rgba(52,139,212,.06)}.stock-analysis-chart-tooltip{position:fixed;z-index:10000;display:none;min-width:270px;max-width:390px;padding:12px 14px;border-radius:9px;background:rgba(31,35,41,.9);color:#fff;font-size:12px;line-height:1.65;pointer-events:none;box-shadow:0 6px 20px rgba(0,0,0,.18)}.stock-analysis-chart-tooltip strong{display:block;margin-bottom:5px;font-size:14px}.stock-analysis-chart-tooltip .tip-row{display:flex;gap:7px;align-items:flex-start}.stock-analysis-chart-tooltip .tip-color{width:10px;height:10px;margin-top:5px;flex:0 0 auto;border:1px solid rgba(255,255,255,.65)}.stock-analysis-chart-tooltip .tip-detail{padding-left:17px;color:#e5e7eb}
.stock-analysis-history-title{margin:20px 0 10px;font-size:15px}.stock-analysis-history-wrap{overflow-x:auto;border:1px solid #edf0f5;border-radius:9px}.stock-analysis-history{min-width:1120px}.stock-analysis-history th,.stock-analysis-history td{text-align:center;white-space:nowrap}.stock-analysis-history thead tr:first-child th{border-bottom:1px solid #e4e7ec}.stock-analysis-history td:nth-last-child(-n+2){color:#d33}.stock-analysis-history-annual{vertical-align:middle;font-weight:600}
.stock-analysis-period-summary{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:9px;margin-bottom:12px}.stock-analysis-period-summary div{padding:11px;border:1px solid #e7eaf0;border-radius:8px;background:#fff}.stock-analysis-period-summary span{display:block;margin-bottom:4px;color:#7b8493;font-size:11px}.stock-analysis-period-summary strong{font-size:15px;color:#202636}.stock-analysis-no-dividend td{background:#fafafa;color:#7b8493}.stock-analysis-no-dividend td:nth-last-child(-n+2){color:#7b8493}
.stock-analysis-event{padding:11px 0;border-bottom:1px solid #eee}.stock-analysis-event:last-child{border-bottom:0}.stock-analysis-event a{color:#245f9e;text-decoration:none}.stock-analysis-event small{color:#999;margin-right:8px}.stock-analysis-tag{display:inline-block;padding:2px 6px;border-radius:9px;background:#eef3f9;color:#53677d;font-size:11px;margin-right:6px}
.stock-analysis-foot{padding:12px 3px;color:#888;font-size:12px}.stock-analysis-negative{color:#c63838!important}
.analysis-help{display:inline-block;width:auto;border-bottom:1px dashed currentColor;cursor:help;text-underline-offset:3px}.stock-analysis-metric span.analysis-help{display:inline-block}.analysis-help:focus{outline:1px solid #7b93ad;outline-offset:2px;border-radius:2px}.analysis-help-tooltip{position:fixed;z-index:10001;display:none;width:320px;max-width:calc(100vw - 16px);padding:10px 12px;border-radius:8px;background:rgba(31,35,41,.94);color:#fff;font-size:12px;font-weight:400;line-height:1.65;text-align:left;white-space:normal;pointer-events:none;box-shadow:0 6px 20px rgba(0,0,0,.2)}
.stock-analysis-statements-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.stock-analysis-statements-head h3{margin:0}.stock-analysis-statements-wrap{margin-top:14px;overflow-x:auto;border:1px solid #dfe4ea;border-radius:8px}.stock-analysis-statements-table{min-width:1100px;width:100%;border-collapse:separate;border-spacing:0;font-size:13px}.stock-analysis-statements-table th,.stock-analysis-statements-table td{min-width:96px;padding:10px 12px;border-right:1px solid #dfe4ea;border-bottom:1px solid #dfe4ea;text-align:right;white-space:nowrap}.stock-analysis-statements-table thead th{text-align:center;background:#f2f0e8;color:#242a33;font-weight:600}.stock-analysis-statements-table thead th small{display:block;margin-top:3px;color:#8a919d;font-size:10px;font-weight:400}.stock-analysis-statements-table tbody th,.stock-analysis-statements-table thead tr:first-child th:first-child{position:sticky;left:0;z-index:2;min-width:190px;text-align:left;background:#faf9f4}.stock-analysis-statements-table thead tr:first-child th:first-child{z-index:3;text-align:center;color:#1672c4}.stock-analysis-statements-table tbody th small{display:block;margin-top:2px;color:#9299a4;font-size:10px;font-weight:400}.stock-analysis-statements-table .statement-value{color:#008e88;font-style:italic}.stock-analysis-statements-table .negative{color:#c63838}.stock-analysis-statements-table tr:last-child th,.stock-analysis-statements-table tr:last-child td{border-bottom:0}.stock-analysis-statements-table .statement-section th{position:static;min-width:0;padding:9px 14px;text-align:left;font-size:13px;font-weight:700;letter-spacing:.02em}.stock-analysis-statements-table .statement-section-balance th{color:#176b55;background:#e9f5ef}.stock-analysis-statements-table .statement-section-income th{color:#87510c;background:#fff3dc}.stock-analysis-statements-table .statement-section-cashflow th{color:#245f9e;background:#eaf2fb}
.stock-analysis-valuation-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.stock-analysis-valuation-head strong{display:block;font-size:16px}.stock-analysis-valuation-head span{display:block;margin-top:4px;color:#667085;font-size:12px}.stock-analysis-valuation-tabs{display:flex;gap:5px}.stock-analysis-valuation-tabs button{padding:6px 12px;border:1px solid #d8dde6;border-radius:6px;background:#fff;color:#4a5565;cursor:pointer}.stock-analysis-valuation-tabs button.selected{background:#294f78;color:#fff;border-color:#294f78}.stock-analysis-valuation-legend{display:flex;justify-content:center;align-items:center;gap:7px;margin:10px 0 2px;color:#667085;font-size:12px;flex-wrap:wrap}.stock-analysis-valuation-legend span{display:inline-block;width:20px;border-top:2px solid}.stock-analysis-valuation-legend .line{border-color:#348bd4}.stock-analysis-valuation-legend .b20{border-color:#4cae65}.stock-analysis-valuation-legend .b50{border-color:#777}.stock-analysis-valuation-legend .b80{border-color:#ef6b67}#stock-analysis-percentiles{position:relative;display:block;overflow:hidden}#stock-analysis-percentiles svg{display:block;width:100%;height:auto;min-height:300px}#stock-analysis-percentiles text{fill:#697386;font-size:11px}.valuation-grid{stroke:#e5e9ef;stroke-width:1}.valuation-line,.valuation-outlier-line,.valuation-negative-line{fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.valuation-line{stroke:#348bd4}.valuation-outlier-line{stroke:#ed8a27}.valuation-negative-line{stroke:#d83a3a}.band20,.band50,.band80{fill:none;stroke-width:1;stroke-dasharray:3 2;stroke-linecap:round;stroke-linejoin:round}.band20{stroke:#4cae65}.band50{stroke:#777}.band80{stroke:#ef6b67}.valuation-hit{fill:transparent;cursor:crosshair}.stock-analysis-valuation-tip{position:absolute;z-index:5;display:none;min-width:150px;padding:8px 10px;border-radius:7px;background:rgba(31,35,41,.9);color:#fff;font-size:12px;pointer-events:none}.stock-analysis-valuation-tip strong,.stock-analysis-valuation-tip span{display:block}
#stock-analysis-percentiles .date-range-control{margin-bottom:12px}.stock-analysis-valuation-legend .outlier{border-color:#ed8a27}.stock-analysis-valuation-legend .negative{border-color:#d83a3a}
.stock-analysis-statements-table .statement-parent th{font-weight:700;color:#263445;background:#f4f7fa}.stock-analysis-statements-table .statement-level-1 th{padding-left:30px;font-weight:400;color:#5d6978;background:#fff}.stock-analysis-statements-table .statement-branch{display:inline-block;margin-right:7px;color:#a1aab6;font-size:12px}.stock-analysis-statements-table .statement-level-1 .statement-value{color:#258f89}
@media(max-width:720px){.stock-analysis-hero{display:block}.stock-analysis-hero #stock-analysis-updated{display:block;margin-top:12px}.stock-analysis-toolbar select,.stock-analysis-toolbar input,.security-analysis-search{width:100%;min-width:0}.security-analysis-suggestions{width:100%;max-width:100%}.stock-analysis-chart svg{height:290px}.stock-analysis-period-summary{grid-template-columns:repeat(2,1fr)}}

.bond-analysis-content{background:#fff;border:1px solid #e2e6ec;border-radius:10px;overflow:hidden}
.bond-analysis-summary{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;padding:16px 18px;background:#f5f7fa;border-bottom:1px solid #dfe4ea}
.bond-analysis-summary strong{font-size:21px}.bond-analysis-summary span{font-size:13px;color:#667085}
.bond-analysis-summary .bond-analysis-delisted{display:inline-flex;align-items:center;padding:3px 9px;border-radius:999px;background:#fce8e6;color:#b42318;font-size:12px;font-weight:700;border:1px solid #f3c7c2}
.bond-analysis-section{padding:0 18px 18px;margin:0;background:#fff}
.bond-analysis-section h3{margin:0 -18px 12px;padding:11px 18px;background:#eef2f6;border-top:1px solid #dfe4ea;border-bottom:1px solid #dfe4ea;font-size:15px;color:#263447}
.bond-analysis-method{display:block;margin:-3px 0 10px;color:#7b8493;line-height:1.55}
.bond-analysis-table-wrap{overflow-x:auto}
.bond-analysis-table{width:100%;border-collapse:collapse;font-size:13px;table-layout:fixed}
.bond-analysis-table th,.bond-analysis-table td{padding:9px 11px;border:1px solid #e3e7ed;text-align:left;vertical-align:top;line-height:1.55;word-break:break-word}
.bond-analysis-table th{width:18%;background:#f8fafc;color:#596579;font-weight:600}
.bond-analysis-table td{width:32%;color:#202636}
.bond-analysis-table tr:last-child th,.bond-analysis-table tr:last-child td{border-bottom:1px solid #e3e7ed}
.bond-analysis-table thead th{width:auto;text-align:center;background:#eef2f6}
.bond-analysis-empty{padding:18px;text-align:center;color:#8a94a4;border:1px solid #e3e7ed}
.bond-analysis-status{padding:12px 18px;color:#7b8493;font-size:12px;border-top:1px solid #e3e7ed;background:#fafbfc}
.bond-analysis-up{color:#c63838!important}.bond-analysis-down{color:#16855b!important}
.bond-analysis-revision-down{color:#16855b;font-weight:700}
.bond-analysis-purpose{white-space:pre-line;line-height:1.75;margin-bottom:4px}
.bond-analysis-current-coupon{display:inline-block;padding:3px 8px;border-radius:10px;background:#fff1d6;color:#a65b00;font-weight:700}
#bond-analysis-price-history .bond-analysis-table th,#bond-analysis-price-history .bond-analysis-table td,#bond-analysis-no-revision .bond-analysis-table th,#bond-analysis-no-revision .bond-analysis-table td{text-align:center;vertical-align:middle}
#bond-analysis-price-history .bond-analysis-table th:nth-child(7),#bond-analysis-price-history .bond-analysis-table td:nth-child(7),#bond-analysis-no-revision .bond-analysis-table th:nth-child(3),#bond-analysis-no-revision .bond-analysis-table td:nth-child(3){text-align:left}
#bond-analysis-price-history .bond-analysis-table th:nth-child(1),#bond-analysis-price-history .bond-analysis-table th:nth-child(2){width:11%}
#bond-analysis-price-history .bond-analysis-table th:nth-child(3),#bond-analysis-price-history .bond-analysis-table th:nth-child(4){width:10%}
#bond-analysis-price-history .bond-analysis-table th:nth-child(5),#bond-analysis-price-history .bond-analysis-table th:nth-child(6){width:7%}
#bond-analysis-price-history .bond-analysis-table th:nth-child(7){width:36%}
#bond-analysis-price-history .bond-analysis-table th:nth-child(8){width:8%}
@media(max-width:720px){.bond-analysis-table{min-width:680px}.bond-analysis-section{padding-left:10px;padding-right:10px}.bond-analysis-section h3{margin-left:-10px;margin-right:-10px}}
