/* Generated by tools/build-portfolio-spa-css.js. Edit the original standalone styles, then regenerate. */
:where(#portofolioPartialMount){color-scheme:dark light;--bg:var(--ac-canvas,#080c12);--surface:var(--ac-surface,#10151F);--surface2:var(--ac-surface-raised,#0c141e);--line:var(--ac-line-hairline,rgba(148,163,184,.16));--line2:var(--ac-line-default,rgba(148,163,184,.28));--text:var(--ac-ink,#e8eef7);--strong:var(--ac-ink,#f8fafc);--muted:var(--ac-text-secondary,#91a0b5);--muted2:var(--ac-text-muted,#64748b);--accent:var(--ac-gain,#34d399);--info:#60a5fa;--warn:#fbbf24;--danger:var(--ac-loss,#fb7185);--radius:15px;--shadow:0 22px 64px rgba(0,0,0,.25)}
html.light :where(#portofolioPartialMount){--bg:var(--ac-canvas,#F3F5F4);--surface:var(--ac-surface,#FFFFFF);--surface2:var(--ac-surface-raised,#F8FAF9);--line:var(--ac-line-hairline,#E2E7E4);--line2:var(--ac-line-default,rgba(18,35,29,.14));--text:var(--ac-ink,#17211E);--strong:var(--ac-ink,#17211E);--muted:var(--ac-text-secondary,#52605B);--muted2:var(--ac-text-muted,#5F6C66);--accent:var(--ac-brand,#0F7458);--info:var(--ac-info,#315F9A);--warn:var(--ac-warning,#A96D13);--danger:var(--ac-negative,#C13F4D);--radius:var(--ac-radius-lg,12px);--shadow:var(--ac-shadow-subtle,0 2px 8px rgba(0,0,0,.06))}
:where(#portofolioPartialMount) *{box-sizing:border-box}
:where(#portofolioPartialMount) button,
:where(#portofolioPartialMount) input,
:where(#portofolioPartialMount) select,
:where(#portofolioPartialMount) textarea{font:inherit}
:where(#portofolioPartialMount) .hidden{display:none!important}
:where(#portofolioPartialMount) .muted{color:var(--muted)}
:where(#portofolioPartialMount) button:focus-visible,
:where(#portofolioPartialMount) input:focus-visible,
:where(#portofolioPartialMount) select:focus-visible,
:where(#portofolioPartialMount) textarea:focus-visible,
:where(#portofolioPartialMount) a:focus-visible{outline:2px solid rgba(110,231,183,.82);outline-offset:2px}
:where(#portofolioPartialMount) .app-header{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:10px 2px 18px;border-bottom:1px solid rgba(148,163,184,.11)}
:where(#portofolioPartialMount) .brand{display:flex;align-items:center;gap:13px;min-width:0}
:where(#portofolioPartialMount) .brand-mark{width:46px;height:46px;display:grid;place-items:center;flex:0 0 auto;border-radius:14px;background:linear-gradient(145deg,#34d399,#22d3ee);color:#04251c;font-weight:950;box-shadow:0 14px 34px rgba(16,185,129,.18),inset 0 1px rgba(255,255,255,.28)}
:where(#portofolioPartialMount) .brand-copy h1{margin:0;color:var(--strong);font-size:clamp(19px,2vw,24px);letter-spacing:-.035em}
:where(#portofolioPartialMount) .brand-copy p{margin:3px 0 0;color:var(--muted);font-size:12px}
:where(#portofolioPartialMount) .header-actions{display:flex;align-items:center;gap:9px}
:where(#portofolioPartialMount) .session-chip{display:inline-flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid var(--line);border-radius:999px;background:rgba(15,23,42,.48);color:var(--muted);font-size:11.5px}
:where(#portofolioPartialMount) .status-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 5px rgba(52,211,153,.08)}
:where(#portofolioPartialMount) .btn,
:where(#portofolioPartialMount) .tab{min-height:40px;padding:9px 13px;border:1px solid var(--line);border-radius:11px;background:#151f2c;color:var(--text);font-weight:760;cursor:pointer;transition:var(--motion-fast, 180ms) var(--ease-standard, cubic-bezier(0.4, 0, 0.2, 1))}
:where(#portofolioPartialMount) .btn:hover,
:where(#portofolioPartialMount) .tab:hover{border-color:var(--line2);background:#192534}
:where(#portofolioPartialMount) .btn:active,
:where(#portofolioPartialMount) .tab:active{transform:translateY(1px)}
:where(#portofolioPartialMount) .btn:disabled{opacity:.48;cursor:not-allowed;transform:none}
:where(#portofolioPartialMount) .btn.primary{border-color:var(--accent);background:var(--accent);color:#04251c}
:where(#portofolioPartialMount) .btn.primary:hover{background:#6ee7b7}
:where(#portofolioPartialMount) .btn.ghost{background:transparent}
:where(#portofolioPartialMount) .btn.danger{color:#fecdd3;border-color:rgba(244,63,94,.34);background:rgba(127,29,29,.2)}
:where(#portofolioPartialMount) .btn.small{min-height:33px;padding:6px 9px;border-radius:9px;font-size:11.5px}
:where(#portofolioPartialMount) .link-btn{text-decoration:none}
:where(#portofolioPartialMount) .full-button{width:100%;margin-top:13px}
:where(#portofolioPartialMount) .access-gate{max-width:650px;margin:72px auto 0;padding:32px;text-align:center;border:1px solid var(--line);border-radius:20px;background:linear-gradient(180deg,rgba(16,24,36,.98),rgba(10,16,25,.98));box-shadow:var(--shadow)}
:where(#portofolioPartialMount) .spinner{display:inline-block;width:30px;height:30px;border:3px solid #263448;border-top-color:var(--accent);border-radius:50%;animation:spin .75s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
:where(#portofolioPartialMount) .tab-strip{position:sticky;top:env(safe-area-inset-top,0px);z-index:30;display:flex;gap:8px;overflow-x:auto;padding:8px 0 14px;margin-bottom:14px;background:linear-gradient(rgba(8,12,18,.98) 80%,transparent);border-bottom:1px solid rgba(148,163,184,.12);box-shadow:0 12px 24px rgba(0,0,0,.18);scrollbar-width:none;overscroll-behavior-inline:contain}
:where(#portofolioPartialMount) .tab-strip::-webkit-scrollbar{display:none}
:where(#portofolioPartialMount) .tab{white-space:nowrap;flex:0 0 auto;color:#94a3b8;background:#17202e;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:8px 16px;font-weight:700;font-size:13px;cursor:pointer;min-height:40px;display:inline-flex;align-items:center;gap:8px;transition:all var(--motion-fast, 180ms) var(--ease-standard, cubic-bezier(0.4, 0, 0.2, 1))}
:where(#portofolioPartialMount) .tab:hover{color:#f1f5f9;background:#1e293b;border-color:rgba(255,255,255,.2)}
:where(#portofolioPartialMount) .tab.active,
:where(#portofolioPartialMount) .tab[aria-selected=true]{background:#10b981;border-color:#10b981;color:#04251c;font-weight:800;box-shadow:0 4px 14px rgba(16,185,129,.25)}
:where(#portofolioPartialMount) .page{display:none;scroll-margin-top:82px}
:where(#portofolioPartialMount) .page.active{display:block}
:where(#portofolioPartialMount) .card{min-width:0;padding:17px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(180deg,rgba(16,24,36,.98),rgba(11,18,28,.98));box-shadow:0 14px 34px rgba(0,0,0,.12)}
:where(#portofolioPartialMount) .card h2,
:where(#portofolioPartialMount) .card h3{margin-top:0;color:var(--strong);letter-spacing:-.02em}
:where(#portofolioPartialMount) .card h2{margin-bottom:4px;font-size:17px}
:where(#portofolioPartialMount) .card h3{margin-bottom:7px;font-size:14px}
:where(#portofolioPartialMount) .card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:13px;margin-bottom:13px}
:where(#portofolioPartialMount) .card-head p{margin:2px 0 0;color:var(--muted);font-size:12px}
:where(#portofolioPartialMount) .grid{display:grid;gap:14px}
:where(#portofolioPartialMount) .grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
:where(#portofolioPartialMount) .grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
:where(#portofolioPartialMount) .grid.dashboard{grid-template-columns:minmax(0,1.45fr) minmax(300px,.72fr)}
:where(#portofolioPartialMount) .stack{display:grid;gap:14px}
:where(#portofolioPartialMount) .section-gap{margin-top:14px}
:where(#portofolioPartialMount) .decision-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;padding:23px;border:1px solid rgba(52,211,153,.2);border-radius:22px;background:radial-gradient(circle at 92% 20%,rgba(52,211,153,.14),transparent 30%),linear-gradient(145deg,rgba(18,31,43,.98),rgba(8,15,24,.99));box-shadow:var(--shadow)}
:where(#portofolioPartialMount) .decision-hero:after{content:"";position:absolute;right:-80px;bottom:-110px;width:260px;height:260px;border-radius:50%;border:1px solid rgba(52,211,153,.08)}
:where(#portofolioPartialMount) .eyebrow{margin:0 0 6px;color:#7dd3fc;font-size:10px;font-weight:850;letter-spacing:.13em;text-transform:uppercase}
:where(#portofolioPartialMount) .decision-hero h2{margin:0;max-width:760px;color:var(--strong);font-size:clamp(22px,3vw,34px);line-height:1.16;letter-spacing:-.045em}
:where(#portofolioPartialMount) .decision-hero p:not(.eyebrow){margin:9px 0 0;max-width:740px;color:#b4c2d4}
:where(#portofolioPartialMount) .posture{position:relative;z-index:1;min-width:185px;padding:15px 17px;border:1px solid var(--line);border-radius:16px;background:rgba(4,10,18,.56)}
:where(#portofolioPartialMount) .posture span{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.09em}
:where(#portofolioPartialMount) .posture strong{display:block;margin-top:5px;font-size:18px}
:where(#portofolioPartialMount) .posture.good strong{color:#86efac}
:where(#portofolioPartialMount) .posture.warn strong{color:#fde68a}
:where(#portofolioPartialMount) .posture.danger strong{color:#fda4af}
:where(#portofolioPartialMount) .posture.neutral strong{color:#cbd5e1}
:where(#portofolioPartialMount) .metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin-top:14px}
:where(#portofolioPartialMount) .metric-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr));margin:0 0 13px}
:where(#portofolioPartialMount) .metric{padding:13px 14px;border:1px solid var(--line);border-radius:13px;background:rgba(7,13,22,.72)}
:where(#portofolioPartialMount) .metric span{display:block;color:var(--muted);font-size:9.5px;text-transform:uppercase;letter-spacing:.07em}
:where(#portofolioPartialMount) .metric strong,
:where(#portofolioPartialMount) .metric b{display:block;margin-top:4px;color:var(--strong);font-size:18px;line-height:1.25}
:where(#portofolioPartialMount) .metric small{display:block;margin-top:3px;color:var(--muted2);font-size:10.5px}
:where(#portofolioPartialMount) .empty{padding:24px;text-align:center;border:1px dashed var(--line);border-radius:12px;color:var(--muted);font-size:12px}
:where(#portofolioPartialMount) .note,
:where(#portofolioPartialMount) .error,
:where(#portofolioPartialMount) .success{margin-top:10px;padding:10px 12px;border-radius:11px;font-size:12px}
:where(#portofolioPartialMount) .note{color:var(--pw-info, var(--info));border:1px solid rgba(59,130,246,.3);background:rgba(59,130,246,.08)}
:where(#portofolioPartialMount) .error{color:var(--ac-bear, var(--danger));border:1px solid rgba(244,63,94,.35);background:rgba(244,63,94,.08)}
:where(#portofolioPartialMount) .success{color:var(--ac-bull, var(--success));border:1px solid rgba(34,197,94,.3);background:rgba(34,197,94,.08)}
:where(#portofolioPartialMount) .fine-print{margin:13px 0 0;color:var(--muted);font-size:11px}
:where(#portofolioPartialMount) .actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:13px}
:where(#portofolioPartialMount) .action-list,
:where(#portofolioPartialMount) .timeline,
:where(#portofolioPartialMount) .journal-list,
:where(#portofolioPartialMount) .candidate-list{display:grid;gap:9px}
:where(#portofolioPartialMount) .action-item,
:where(#portofolioPartialMount) .timeline-item,
:where(#portofolioPartialMount) .journal-item,
:where(#portofolioPartialMount) .candidate-item{display:grid;gap:8px;padding:11px 12px;border:1px solid var(--line);border-radius:12px;background:rgba(6,12,20,.58)}
:where(#portofolioPartialMount) .action-item{grid-template-columns:auto minmax(0,1fr) auto;align-items:center}
:where(#portofolioPartialMount) .action-rank{width:28px;height:28px;display:grid;place-items:center;border-radius:9px;background:rgba(148,163,184,.1);color:#cbd5e1;font-size:11px;font-weight:850}
:where(#portofolioPartialMount) .action-copy strong{display:block;color:var(--strong)}
:where(#portofolioPartialMount) .action-copy span{display:block;margin-top:2px;color:var(--muted);font-size:11.5px}
:where(#portofolioPartialMount) .pill{display:inline-flex;align-items:center;width:fit-content;padding:4px 8px;border:1px solid var(--line);border-radius:999px;font-size:10.5px;font-weight:800}
:where(#portofolioPartialMount) .pill.good{color:#bbf7d0;border-color:rgba(34,197,94,.3);background:rgba(34,197,94,.08)}
:where(#portofolioPartialMount) .pill.warn{color:#fde68a;border-color:rgba(245,158,11,.34);background:rgba(245,158,11,.08)}
:where(#portofolioPartialMount) .pill.danger{color:#fecdd3;border-color:rgba(244,63,94,.34);background:rgba(244,63,94,.08)}
:where(#portofolioPartialMount) .pill.info{color:#bfdbfe;border-color:rgba(59,130,246,.34);background:rgba(59,130,246,.08)}
:where(#portofolioPartialMount) .pill.neutral{color:#cbd5e1}
:where(#portofolioPartialMount) .data-rows{display:grid}
:where(#portofolioPartialMount) .data-row{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:9px 0;border-bottom:1px solid rgba(148,163,184,.09)}
:where(#portofolioPartialMount) .data-row:last-child{border-bottom:0}
:where(#portofolioPartialMount) .data-row span{color:var(--muted);font-size:11.5px}
:where(#portofolioPartialMount) .data-row strong{text-align:right;color:var(--strong);font-size:12px}
:where(#portofolioPartialMount) .sector-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
:where(#portofolioPartialMount) .sector-card{padding:11px;border:1px solid var(--line);border-radius:12px;background:rgba(6,12,20,.55)}
:where(#portofolioPartialMount) .sector-card strong{display:block;color:var(--strong)}
:where(#portofolioPartialMount) .sector-card span{display:block;margin-top:3px;color:var(--muted);font-size:11px}
:where(#portofolioPartialMount) .form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
:where(#portofolioPartialMount) .form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
:where(#portofolioPartialMount) .field{display:flex;flex-direction:column;gap:6px}
:where(#portofolioPartialMount) .field.full,
:where(#portofolioPartialMount) .check-row.full{grid-column:1/-1}
:where(#portofolioPartialMount) .field label{font-size:11.5px;font-weight:760;color:var(--color-text-secondary,var(--muted))}
:where(#portofolioPartialMount) input,
:where(#portofolioPartialMount) select,
:where(#portofolioPartialMount) textarea{width:100%;min-height:42px;padding:10px 11px;border:1px solid var(--line);border-radius:10px;outline:none;background:#08111b;color:var(--text)}
:where(#portofolioPartialMount) select#budgetProfile,
:where(#portofolioPartialMount) select#riskProfile{min-height:41px !important;padding:10px 11px !important;box-sizing:border-box !important}
:where(#portofolioPartialMount) textarea{min-height:90px;resize:vertical}
:where(#portofolioPartialMount) input:focus,
:where(#portofolioPartialMount) select:focus,
:where(#portofolioPartialMount) textarea:focus{border-color:rgba(52,211,153,.58);box-shadow:0 0 0 3px rgba(52,211,153,.08)}
:where(#portofolioPartialMount) .check-row{display:flex;align-items:center;gap:8px;color:var(--color-text-secondary,var(--muted));font-size:12px}
:where(#portofolioPartialMount) .check-row input{width:auto;min-height:auto}
:where(#portofolioPartialMount) .budget-band-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:12px}
:where(#portofolioPartialMount) .budget-band{padding:11px;border:1px solid var(--line);border-radius:12px;background:var(--surface2)}
:where(#portofolioPartialMount) .budget-band span{color:var(--muted);font-size:10px}
:where(#portofolioPartialMount) .budget-band strong{display:block;margin-top:3px;color:var(--strong);font-size:15px}
:where(#portofolioPartialMount) .candidate-item{grid-template-columns:minmax(0,1fr) auto;align-items:center}
:where(#portofolioPartialMount) .candidate-main{display:grid;grid-template-columns:minmax(90px,.55fr) repeat(3,minmax(0,1fr));gap:10px;align-items:center}
:where(#portofolioPartialMount) .candidate-main strong{color:var(--strong)}
:where(#portofolioPartialMount) .candidate-stat span{display:block;color:var(--muted2);font-size:9.5px;text-transform:uppercase}
:where(#portofolioPartialMount) .candidate-stat b{display:block;margin-top:2px;font-size:12px}
:where(#portofolioPartialMount) .table-wrap{overflow-x:auto;overflow-y:auto;max-height:520px;border:1px solid var(--line);border-radius:13px;scrollbar-width:thin;overscroll-behavior-y:contain}
:where(#portofolioPartialMount) .table-wrap thead th{position:sticky;top:0;z-index:2;background:rgba(17,27,40,.98);backdrop-filter:blur(8px)}
:where(#portofolioPartialMount) table{width:100%;min-width:980px;border-collapse:collapse}
:where(#portofolioPartialMount) th,
:where(#portofolioPartialMount) td{padding:11px 12px;text-align:left;border-bottom:1px solid rgba(148,163,184,.09)}
:where(#portofolioPartialMount) th{color:#a8c7ee;background:rgba(17,27,40,.95);font-size:10.5px;text-transform:uppercase}
:where(#portofolioPartialMount) td{color:#d8e1ed;font-size:12px}
:where(#portofolioPartialMount) tr:last-child td{border-bottom:0}
:where(#portofolioPartialMount) .ticker-link{padding:0;border:0;background:none;color:#a7f3d0;font-weight:850;cursor:pointer}
:where(#portofolioPartialMount) .row-actions{display:flex;flex-wrap:wrap;gap:6px}
:where(#portofolioPartialMount) .mobile-position-list{display:none;gap:10px}
:where(#portofolioPartialMount) .position-card{padding:13px;border:1px solid var(--line);border-radius:13px;background:rgba(7,13,22,.65)}
:where(#portofolioPartialMount) .position-card-head{display:flex;justify-content:space-between;gap:12px}
:where(#portofolioPartialMount) .position-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:11px}
:where(#portofolioPartialMount) .position-card-grid span{display:block;color:var(--muted2);font-size:9.5px;text-transform:uppercase}
:where(#portofolioPartialMount) .position-card-grid b{display:block;margin-top:2px;font-size:12px}
:where(#portofolioPartialMount) .timeline-item{grid-template-columns:auto minmax(0,1fr)}
:where(#portofolioPartialMount) .timeline-mark{width:10px;height:10px;margin-top:5px;border-radius:50%;background:#64748b;box-shadow:0 0 0 5px rgba(100,116,139,.08)}
:where(#portofolioPartialMount) .timeline-mark.good{background:#4ade80}
:where(#portofolioPartialMount) .timeline-mark.warn{background:#fbbf24}
:where(#portofolioPartialMount) .timeline-mark.danger{background:#fb7185}
:where(#portofolioPartialMount) .timeline-mark.info{background:#60a5fa}
:where(#portofolioPartialMount) .timeline-copy strong{display:block;color:var(--strong);font-size:12px}
:where(#portofolioPartialMount) .timeline-copy span{display:block;margin-top:2px;color:var(--muted);font-size:11px}
:where(#portofolioPartialMount) .journal-item{grid-template-columns:minmax(0,1fr) auto}
:where(#portofolioPartialMount) .journal-meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
:where(#portofolioPartialMount) .journal-item p{margin:4px 0 0;color:var(--muted);font-size:11.5px;white-space:pre-wrap}
:where(#portofolioPartialMount) .journal-time{color:var(--muted2);font-size:10.5px;white-space:nowrap}
:where(#portofolioPartialMount) .ai-shell{display:grid;grid-template-columns:minmax(0,3.2fr) minmax(260px,.8fr);gap:20px;max-width:1440px;margin:0 auto}
:where(#portofolioPartialMount) .ai-chat{position:relative;min-width:0;height:clamp(480px,calc(100dvh - 110px),960px);min-height:460px;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto auto;overflow:hidden}
:where(#portofolioPartialMount) .ai-chat>.card-head{padding-bottom:14px;border-bottom:1px solid rgba(148,163,184,.1);margin-bottom:0}
:where(#portofolioPartialMount) .ai-quick{display:flex;gap:8px;overflow-x:auto;padding:12px 0 10px;scrollbar-width:none}
:where(#portofolioPartialMount) .ai-quick::-webkit-scrollbar{display:none}
:where(#portofolioPartialMount) .ai-quick .btn{min-height:34px;padding:7px 11px;border-radius:999px;white-space:nowrap;font-size:11.5px}
:where(#portofolioPartialMount) .ai-messages{min-height:180px;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;display:flex;flex-direction:column;gap:12px;padding:14px 8px 18px 2px}
:where(#portofolioPartialMount) .ai-message{padding:14px 18px;border-radius:16px;font-size:14px;line-height:1.68;overflow-wrap:anywhere}
:where(#portofolioPartialMount) .ai-user{align-self:flex-end;max-width:min(680px,88%);border:1px solid rgba(52,211,153,.24);background:rgba(16,185,129,.12);color:#ecfdf5;border-bottom-right-radius:5px;white-space:pre-wrap}
:where(#portofolioPartialMount) .ai-assistant{align-self:flex-start;max-width:100%;border:1px solid rgba(148,163,184,.14);background:rgba(6,11,19,.78);color:#dbeafe;border-top-left-radius:5px}
:where(#portofolioPartialMount) .ai-system{align-self:center;max-width:620px;text-align:center;color:var(--muted);border:1px dashed var(--line);background:rgba(15,23,42,.3)}
:where(#portofolioPartialMount) .ai-loading{display:flex;align-items:center;gap:7px}
:where(#portofolioPartialMount) .ai-loading-dot{width:6px;height:6px;border-radius:50%;background:var(--info);animation:aiPulse 1s infinite alternate}
@keyframes aiPulse{to{opacity:.3;transform:translateY(-2px)}}
:where(#portofolioPartialMount) .ai-compose{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:end;padding-top:13px;border-top:1px solid rgba(148,163,184,.1)}
:where(#portofolioPartialMount) .ai-compose textarea{min-height:60px;max-height:150px;resize:none;font-size:13.5px}
:where(#portofolioPartialMount) .ai-status{margin-top:7px;color:#7f9bb7;font-size:11.5px}
:where(#portofolioPartialMount) .ai-data-grid{display:grid;gap:8px}
:where(#portofolioPartialMount) .ai-data-card{padding:10px 11px;border:1px solid var(--line);border-radius:10px;background:rgba(5,10,17,.62)}
:where(#portofolioPartialMount) .ai-data-card span{display:block;color:var(--color-text-secondary,var(--muted));font-size:9.5px;text-transform:uppercase}
:where(#portofolioPartialMount) .ai-data-card b{display:block;margin-top:3px;font-size:15px}
:where(#portofolioPartialMount) .ai-disclaimer{color:var(--muted);font-size:11px}
:where(#portofolioPartialMount) .ai-jump-latest{position:absolute;z-index:5;right:26px;bottom:104px;padding:7px 11px;border:1px solid rgba(52,211,153,.35);border-radius:999px;background:rgba(6,78,59,.94);color:#d1fae5;font:700 11px/1.2 inherit;cursor:pointer}
@media screen and (max-height:768px){
:where(#portofolioPartialMount) .ai-chat{height:calc(100dvh - 95px);min-height:400px}
:where(#portofolioPartialMount) .ai-messages{min-height:140px}
}
:where(#portofolioPartialMount) .drawer-backdrop,
:where(#portofolioPartialMount) .modal-backdrop{position:fixed;inset:0;z-index:80;background:rgba(0,0,0,.58);backdrop-filter:blur(3px)}
:where(#portofolioPartialMount) .drawer{position:fixed;z-index:81;top:0;right:0;width:min(460px,100%);height:100dvh;overflow-y:auto;padding:18px;border-left:1px solid var(--line);background:linear-gradient(180deg,#101925,#09111b);box-shadow:-28px 0 70px rgba(0,0,0,.38)}
:where(#portofolioPartialMount) .drawer-head{display:flex;justify-content:space-between;gap:12px;padding-bottom:13px;border-bottom:1px solid var(--line)}
:where(#portofolioPartialMount) .drawer-head h2{margin:0;font-size:22px}
:where(#portofolioPartialMount) .drawer-section{padding:14px 0;border-bottom:1px solid rgba(148,163,184,.1)}
:where(#portofolioPartialMount) .drawer-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
:where(#portofolioPartialMount) .drawer-metric{padding:10px;border:1px solid var(--line);border-radius:11px;background:rgba(5,10,17,.6)}
:where(#portofolioPartialMount) .drawer-metric span{display:block;color:var(--muted2);font-size:9.5px;text-transform:uppercase}
:where(#portofolioPartialMount) .drawer-metric b{display:block;margin-top:3px}
:where(#portofolioPartialMount) .modal{position:fixed;z-index:91;left:50%;top:50%;transform:translate(-50%,-50%);width:min(620px,calc(100% - 24px));max-height:calc(100dvh - 28px);overflow-y:auto;padding:19px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(180deg,#111b28,#0b131e);box-shadow:0 32px 90px rgba(0,0,0,.48)}
:where(#portofolioPartialMount) .modal-backdrop{z-index:90}
:where(#portofolioPartialMount) .toast-host{position:fixed;z-index:120;top:16px;right:16px;display:grid;gap:8px;width:min(360px,calc(100% - 24px));pointer-events:none}
:where(#portofolioPartialMount) .toast{padding:11px 13px;border:1px solid var(--line);border-radius:11px;background:#111c29;color:var(--text);box-shadow:0 16px 44px rgba(0,0,0,.32)}
@media(max-width:1080px){
:where(#portofolioPartialMount) .grid.dashboard,
:where(#portofolioPartialMount) .ai-shell{grid-template-columns:1fr}
:where(#portofolioPartialMount) .metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
:where(#portofolioPartialMount) .ai-shell>aside{order:2}
:where(#portofolioPartialMount) .ai-chat{height:clamp(580px,78dvh,760px);min-height:560px}
}
@media(max-width:760px){
:where(#portofolioPartialMount) .app-header{align-items:flex-start}
:where(#portofolioPartialMount) .session-chip{display:none}
:where(#portofolioPartialMount) .tab-strip{padding:10px 0 12px;margin-bottom:12px}
:where(#portofolioPartialMount) .decision-hero{grid-template-columns:1fr;padding:18px}
:where(#portofolioPartialMount) .posture{min-width:0}
:where(#portofolioPartialMount) .grid.two,
:where(#portofolioPartialMount) .grid.three,
:where(#portofolioPartialMount) .form-grid,
:where(#portofolioPartialMount) .form-grid.three{grid-template-columns:1fr}
:where(#portofolioPartialMount) .field.full,
:where(#portofolioPartialMount) .check-row.full{grid-column:auto}
:where(#portofolioPartialMount) .sector-grid,
:where(#portofolioPartialMount) .budget-band-grid{grid-template-columns:1fr}
:where(#portofolioPartialMount) .candidate-item{grid-template-columns:1fr}
:where(#portofolioPartialMount) .candidate-main{grid-template-columns:repeat(2,minmax(0,1fr))}
:where(#portofolioPartialMount) .table-wrap{display:none}
:where(#portofolioPartialMount) .mobile-position-list{display:grid}
:where(#portofolioPartialMount) .card{padding:14px}
:where(#portofolioPartialMount) .ai-chat{height:clamp(510px,70dvh,640px);min-height:510px;padding:13px}
:where(#portofolioPartialMount) .ai-user{max-width:92%}
:where(#portofolioPartialMount) .ai-assistant{max-width:98%}
}
@media(max-width:480px){
:where(#portofolioPartialMount) .brand-copy p{display:none}
:where(#portofolioPartialMount) .brand-mark{width:40px;height:40px}
:where(#portofolioPartialMount) .metric-grid{grid-template-columns:1fr 1fr;gap:8px}
:where(#portofolioPartialMount) .metric{padding:11px}
:where(#portofolioPartialMount) .metric strong,
:where(#portofolioPartialMount) .metric b{font-size:15px}
:where(#portofolioPartialMount) .action-item{grid-template-columns:auto minmax(0,1fr)}
:where(#portofolioPartialMount) .action-item>.btn{grid-column:1/-1;width:100%}
:where(#portofolioPartialMount) .drawer{padding:14px}
}
@media (prefers-reduced-motion: reduce){
:where(#portofolioPartialMount) *,
:where(#portofolioPartialMount) *:before,
:where(#portofolioPartialMount) *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}
:where(#portofolioPartialMount) .pnl{ font-variant-numeric: tabular-nums; }
:where(#portofolioPartialMount) .pnl.pnl-up,
:where(#portofolioPartialMount) .metric small.pnl-up{ color: var(--accent); }
:where(#portofolioPartialMount) .pnl.pnl-down,
:where(#portofolioPartialMount) .metric small.pnl-down{ color: var(--danger); }
:where(#portofolioPartialMount) .pnl.pnl-flat,
:where(#portofolioPartialMount) .metric small.pnl-flat{ color: var(--muted); }
:where(#portofolioPartialMount) .pnl.pnl-unknown,
:where(#portofolioPartialMount) .metric small.pnl-unknown{ color: var(--muted2); }
:where(#portofolioPartialMount) .decision-hero{
  padding: 14px 16px;
  gap: 14px;
  border-radius: 14px;
}
:where(#portofolioPartialMount) .decision-hero h2{
  font-size: 17px;
  line-height: 1.25;
  letter-spacing: -0.015em;
  margin: 2px 0 0;
}
:where(#portofolioPartialMount) .decision-hero #decisionNote{
  margin-top: 5px;
  font-size: 12px;
  line-height: 1.5;
  color: var(--muted);
  max-width: 68ch;
}
:where(#portofolioPartialMount) .eyebrow{ font-size: 9.5px; margin-bottom: 3px; }
:where(#portofolioPartialMount) .posture{
  min-width: 0;
  padding: 9px 13px;
  border-radius: 11px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
:where(#portofolioPartialMount) .posture span{ font-size: 9.5px; letter-spacing: 0.12em; }
:where(#portofolioPartialMount) .posture strong{ font-size: 15px; line-height: 1.2; }
:where(#portofolioPartialMount) .metric-grid{
  gap: 0;
  margin-top: 10px;
  border: 1px solid var(--line);
  border-radius: 13px;
  background: rgba(7, 13, 22, .72);
  overflow: hidden;
}
:where(#portofolioPartialMount) .metric{
  padding: 11px 15px;
  border: 0;
  border-left: 1px solid var(--line);
  border-radius: 0;
  background: none;
}
:where(#portofolioPartialMount) .metric:first-child{ border-left: 0; }
:where(#portofolioPartialMount) .metric span{
  font-size: 9.5px;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--muted2);
}
:where(#portofolioPartialMount) .metric strong{
  display: block;
  margin-top: 3px;
  font-size: 19px;
  line-height: 1.15;
  letter-spacing: -0.02em;
  font-variant-numeric: tabular-nums;
}
:where(#portofolioPartialMount) .metric small{
  display: block;
  margin-top: 2px;
  font-size: 10.5px;
  color: var(--muted2);
}
:where(#portofolioPartialMount) .portfolio-empty .metric strong{ font-size: 15px; color: var(--muted); }
:where(#portofolioPartialMount) .portfolio-empty .metric-grid,
:where(#portofolioPartialMount) .portfolio-empty #page-today .metric-grid{
  display: none;
}
:where(#portofolioPartialMount) .empty-portfolio-cta{
  margin-top: var(--ac-space-12, 12px);
  padding: var(--ac-space-16, 16px);
  border: 1px dashed var(--line2);
  border-radius: var(--ac-radius-md, 13px);
  background: var(--surface2);
}
:where(#portofolioPartialMount) .empty-portfolio-cta h3{
  margin: 0;
  font-size: 15px;
  font-weight: 800;
  color: var(--strong);
  letter-spacing: -0.01em;
}
:where(#portofolioPartialMount) .empty-portfolio-cta p{
  margin: var(--ac-space-4, 4px) 0 0;
  font-size: 13px;
  line-height: 1.55;
  color: var(--muted);
  max-width: 62ch;
}
:where(#portofolioPartialMount) .empty-portfolio-cta .actions{
  margin-top: var(--ac-space-12, 12px);
  display: flex;
  gap: var(--ac-space-8, 8px);
  flex-wrap: wrap;
}
html.light :where(#portofolioPartialMount) .empty-portfolio-cta{
  background: var(--surface2);
  border-color: var(--line);
}
html.light :where(#portofolioPartialMount) .btn,
html.light :where(#portofolioPartialMount) .tab{
  background: var(--surface2);
  color: var(--text);
  border-color: var(--line);
}
html.light :where(#portofolioPartialMount) .btn:hover,
html.light :where(#portofolioPartialMount) .tab:hover{
  background: var(--surface);
  border-color: var(--line2);
}
html.light :where(#portofolioPartialMount) .btn.primary{
  background: var(--accent);
  color: var(--bg);
  border-color: var(--accent);
}
html.light :where(#portofolioPartialMount) .posture{
  background: var(--surface2);
  border-color: var(--line);
}
html.light :where(#portofolioPartialMount) .posture.good strong{ color: var(--accent); }
html.light :where(#portofolioPartialMount) .posture.warn strong{ color: var(--warn); }
html.light :where(#portofolioPartialMount) .posture.danger strong{ color: var(--danger); }
html.light :where(#portofolioPartialMount) .posture.neutral strong{ color: var(--strong); }
html.light :where(#portofolioPartialMount) .posture span{ color: var(--muted); }
html.light :where(#portofolioPartialMount) .decision-hero{
  background: var(--surface);
  border-color: var(--line);
}
html.light :where(#portofolioPartialMount) .decision-hero p:not(.eyebrow){
  color: var(--muted);
}
html.light :where(#portofolioPartialMount) .action-rank{
  background: var(--surface2);
  color: var(--text);
  border: 1px solid var(--line);
}
:where(#portofolioPartialMount) .pcc-mobile-nav{
  display: none;
}
@media (max-width: 767px){
:where(#portofolioPartialMount) .app-shell .tab-strip,
:where(#portofolioPartialMount) .portfolio-command-center .tab-strip,
:where(#portofolioPartialMount) .tab-strip{
    display: none;
  }
:where(#portofolioPartialMount) .app-shell .pcc-mobile-nav,
:where(#portofolioPartialMount) .portfolio-command-center .pcc-mobile-nav,
:where(#portofolioPartialMount) .pcc-mobile-nav{
    display: block;
    width: 100%;
    margin-bottom: var(--ac-space-16, 16px);
  }
:where(#portofolioPartialMount) .pcc-mobile-select{
    display: block;
    width: 100%;
    min-height: 44px;
    height: 44px;
    padding: 0 var(--ac-space-12, 12px);
    font-size: 16px;
    font-weight: 600;
    line-height: 44px;
    border-radius: var(--ac-radius-md);
    border: 1px solid var(--ac-line);
    background-color: var(--ac-surface-2);
    color: var(--ac-text);
    cursor: pointer;
  }
html.light :where(#portofolioPartialMount) .pcc-mobile-select{
    background-color: var(--ac-surface);
    color: var(--ac-text);
    border-color: var(--ac-line);
  }
}
:where(#portofolioPartialMount) .tab-strip{
  gap: 2px;
  border-bottom: 1px solid var(--line);
  padding-bottom: 0;
}
:where(#portofolioPartialMount) .tab{
  min-height: 36px;
  padding: 8px 12px;
  border: 0;
  border-bottom: 2px solid transparent;
  border-radius: 8px 8px 0 0;
  background: none;
  color: var(--muted);
  font-size: 12.5px;
  font-weight: 700;
}
:where(#portofolioPartialMount) .tab:hover{ background: rgba(148, 163, 184, .06); color: var(--text); }
:where(#portofolioPartialMount) .tab[aria-selected="true"]{
  background: none;
  color: var(--accent);
  border-bottom-color: var(--accent);
}
:where(#portofolioPartialMount) .card{ padding: 14px 15px; border-color: var(--line); }
:where(#portofolioPartialMount) .card-head{ margin-bottom: 10px; }
:where(#portofolioPartialMount) .card-head h2{
  font-size: 14px;
  letter-spacing: -0.01em;
}
:where(#portofolioPartialMount) .card-head p{ font-size: 11.5px; line-height: 1.5; color: var(--muted); }
:where(#portofolioPartialMount) .metric strong,
:where(#portofolioPartialMount) .data-row strong,
:where(#portofolioPartialMount) .drawer-metric b,
:where(#portofolioPartialMount) .position-card-grid b{
  font-variant-numeric: tabular-nums;
}
@media (max-width: 720px){
:where(#portofolioPartialMount) .metric{ border-left: 0; border-top: 1px solid var(--line); }
:where(#portofolioPartialMount) .metric:nth-child(-n+2){ border-top: 0; }
:where(#portofolioPartialMount) .metric:nth-child(even){ border-left: 1px solid var(--line); }
:where(#portofolioPartialMount) .decision-hero{ padding: 13px 14px; }
:where(#portofolioPartialMount) .decision-hero h2{ font-size: 16px; }
}
:where(#portofolioPartialMount) .ai-data-grid{
  gap: 0;
  border: 1px solid var(--line);
  border-radius: 11px;
  background: var(--surface2);
  overflow: hidden;
}
:where(#portofolioPartialMount) .ai-data-card{
  padding: 9px 12px;
  border: 0;
  border-top: 1px solid var(--line);
  border-radius: 0;
  background: none;
}
:where(#portofolioPartialMount) .ai-data-card:first-child{ border-top: 0; }
:where(#portofolioPartialMount) .ai-data-card span{
  font-size: 9.5px;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--color-text-secondary, var(--muted));
}
:where(#portofolioPartialMount) #page-ai .ai-data-grid .ai-data-card{
  background: var(--surface2);
}
:where(#portofolioPartialMount) .ai-data-card strong,
:where(#portofolioPartialMount) .ai-data-card b{
  display: block;
  margin-top: 2px;
  font-size: 15px;
  line-height: 1.2;
  font-variant-numeric: tabular-nums;
}
:where(#portofolioPartialMount) .ai-chat:not(:has(.ai-message:not(.ai-system))){
  height: auto;
  min-height: 0;
}
:where(#portofolioPartialMount) .ai-chat:not(:has(.ai-message:not(.ai-system))) .ai-messages{
  min-height: 120px;
  padding-top: 8px;
  padding-bottom: 8px;
}
:where(#portofolioPartialMount) .ai-system{ padding: 12px 14px; border-radius: 11px; font-size: 12.5px; line-height: 1.55; }
:where(#portofolioPartialMount) .ai-copy-btn{ margin-top: 8px; padding: 4px 10px; border-radius: 999px; border: 1px solid rgba(148,163,184,.22); background: rgba(148,163,184,.08); color: #9db2c9; font-size: 10.5px; font-weight: 700; cursor: pointer; }
:where(#portofolioPartialMount) .ai-copy-btn:hover{ background: rgba(148,163,184,.16); color: #cbd5e1; }
:where(#portofolioPartialMount) #watchTable{
  border-color: rgba(148, 163, 184, .12);
  box-shadow: 0 8px 24px rgba(0, 0, 0, .14);
}
:where(#portofolioPartialMount) #watchTable table{
  border-collapse: separate;
  border-spacing: 0;
  font-variant-numeric: tabular-nums lining-nums;
}
:where(#portofolioPartialMount) #watchTable thead th{
  position: sticky;
  top: 0;
  z-index: 2;
  height: 34px;
  padding: 0 10px;
  background: #111b28;
  border-bottom: 1px solid rgba(148, 163, 184, .12);
  color: #94a3b8;
  white-space: nowrap;
}
:where(#portofolioPartialMount) #watchTable tbody td{
  height: 36px;
  padding: 8px 10px;
  border-bottom: 1px solid rgba(148, 163, 184, .10);
}
:where(#portofolioPartialMount) #watchTable th:nth-child(n+3):nth-child(-n+8),
:where(#portofolioPartialMount) #watchTable td:nth-child(n+3):nth-child(-n+8){
  text-align: right;
  white-space: nowrap;
  font-variant-numeric: tabular-nums lining-nums;
}
:where(#portofolioPartialMount) #watchTable .pill{
  min-height: 20px;
  padding: 2px 7px;
  font-size: 10px;
  line-height: 1;
}
@media (max-width: 900px){
:where(#portofolioPartialMount) .ai-shell{ grid-template-columns: minmax(0, 1fr); }
}
:where(#portofolioPartialMount) .tab-strip{
  display: flex;
  align-items: center !important;
  gap: 6px !important;
  padding: 6px !important;
  margin-bottom: 16px !important;
  background: rgba(15, 23, 42, 0.78) !important;
  border: 1px solid rgba(148, 163, 184, 0.16) !important;
  border-radius: 14px !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04), 0 6px 18px rgba(2, 6, 23, 0.28) !important;
  overflow-x: auto;
  scrollbar-width: none;
}
@media (min-width: 1024px){
:where(#portofolioPartialMount) .tab-strip{
    flex-wrap: wrap !important;
    overflow-x: visible !important;
  }
}
@media (max-width: 767px){
:where(#portofolioPartialMount) #tabStrip.tab-strip,
:where(#portofolioPartialMount) .app-shell .tab-strip,
:where(#portofolioPartialMount) .portfolio-command-center .tab-strip,
:where(#portofolioPartialMount) .tab-strip{
    display: none;
  }
}
:where(#portofolioPartialMount) .tab{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 7px !important;
  padding: 7px 13px !important;
  min-height: 36px !important;
  border-radius: 10px !important;
  font-size: 12.5px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  letter-spacing: -0.01em !important;
  color: #94a3b8 !important;
  background: transparent !important;
  border: 1px solid transparent !important;
  white-space: nowrap !important;
  cursor: pointer;
  transition: background-color 0.16s ease, color 0.16s ease, border-color 0.16s ease, box-shadow 0.16s ease !important;
  flex-shrink: 0 !important;
}
:where(#portofolioPartialMount) .tab:hover{
  color: #f1f5f9 !important;
  background: rgba(30, 41, 59, 0.72) !important;
  border-color: rgba(148, 163, 184, 0.18) !important;
}
:where(#portofolioPartialMount) .tab.active,
:where(#portofolioPartialMount) .tab[aria-selected="true"]{
  color: #34d399 !important;
  background: linear-gradient(135deg, rgba(16, 185, 129, 0.2), rgba(6, 78, 59, 0.32)) !important;
  border: 1px solid rgba(16, 185, 129, 0.48) !important;
  box-shadow: 0 2px 10px rgba(16, 185, 129, 0.16), inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;
  font-weight: 700 !important;
}
:where(#portofolioPartialMount) .app-header{
  background: rgba(11, 15, 25, 0.94) !important;
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border-bottom: 1px solid rgba(148, 163, 184, 0.14) !important;
  box-shadow: 0 4px 20px rgba(2, 6, 23, 0.35);
  border-radius: 14px;
  padding: 12px 18px !important;
  margin-bottom: 16px;
}
:where(#portofolioPartialMount) .decision-hero{
  background: linear-gradient(180deg, rgba(15, 23, 42, 0.92), rgba(11, 15, 25, 0.94)) !important;
  border: 1px solid rgba(148, 163, 184, 0.16) !important;
  border-radius: 14px !important;
  padding: 16px 20px !important;
  box-shadow: 0 8px 24px rgba(2, 6, 23, 0.28) !important;
}
:where(#portofolioPartialMount) .metric-grid{
  border: 1px solid rgba(148, 163, 184, 0.16) !important;
  border-radius: 14px !important;
  background: rgba(15, 23, 42, 0.82) !important;
  box-shadow: 0 6px 20px rgba(2, 6, 23, 0.24) !important;
}
:where(#portofolioPartialMount) .metric{
  padding: 12px 16px !important;
  border-left: 1px solid rgba(148, 163, 184, 0.12) !important;
}
:where(#portofolioPartialMount) .metric strong,
:where(#portofolioPartialMount) .metric b{
  font-family: var(--font-mono, 'Geist Mono', monospace) !important;
  font-variant-numeric: tabular-nums !important;
  font-weight: 800 !important;
  color: #f8fafc !important;
}
:where(#portofolioPartialMount) .card{
  background: rgba(15, 23, 42, 0.86) !important;
  border: 1px solid rgba(148, 163, 184, 0.16) !important;
  border-radius: 14px !important;
  box-shadow: 0 8px 24px rgba(2, 6, 23, 0.26) !important;
}
:where(#portofolioPartialMount) .table-wrap{
  border: 1px solid rgba(148, 163, 184, 0.16) !important;
  border-radius: 12px !important;
  background: rgba(11, 15, 25, 0.72) !important;
  overflow: auto !important;
}
:where(#portofolioPartialMount) table{
  border-collapse: separate !important;
  border-spacing: 0 !important;
  font-variant-numeric: tabular-nums !important;
}
:where(#portofolioPartialMount) thead th{
  position: sticky !important;
  top: 0 !important;
  z-index: 10 !important;
  padding: 8px 10px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  color: #94a3b8 !important;
  background-color: #0f172a !important;
  border-bottom: 1px solid rgba(148, 163, 184, 0.22) !important;
  white-space: nowrap !important;
}
:where(#portofolioPartialMount) tbody td{
  padding: 8px 10px !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
  font-variant-numeric: tabular-nums !important;
  border-bottom: 1px solid rgba(148, 163, 184, 0.08) !important;
  vertical-align: middle !important;
}
:where(#portofolioPartialMount) tbody tr:hover{
  background-color: rgba(30, 41, 59, 0.55) !important;
}
:where(#portofolioPartialMount) tfoot td{
  position: sticky !important;
  bottom: 0 !important;
  z-index: 5 !important;
  padding: 9px 10px !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  font-family: var(--font-mono, 'Geist Mono', monospace) !important;
  font-variant-numeric: tabular-nums !important;
  background-color: #0f172a !important;
  border-top: 2px solid rgba(16, 185, 129, 0.4) !important;
  border-bottom: 0 !important;
}
:where(#portofolioPartialMount) input,
:where(#portofolioPartialMount) select,
:where(#portofolioPartialMount) textarea{
  font-family: inherit !important;
  font-variant-numeric: tabular-nums !important;
  border-radius: 10px !important;
  border: 1px solid rgba(148, 163, 184, 0.22) !important;
  background: rgba(15, 23, 42, 0.88) !important;
  color: #f8fafc !important;
  transition: border-color var(--motion-fast, 180ms) var(--ease-standard, cubic-bezier(0.4, 0, 0.2, 1)),
              box-shadow var(--motion-fast, 180ms) var(--ease-standard, cubic-bezier(0.4, 0, 0.2, 1)) !important;
}
:where(#portofolioPartialMount) input:focus,
:where(#portofolioPartialMount) select:focus,
:where(#portofolioPartialMount) textarea:focus{
  border-color: rgba(16, 185, 129, 0.65) !important;
  box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.16) !important;
  outline: none !important;
}
:where(#portofolioPartialMount) .btn.primary{
  background: #10b981 !important;
  border-color: #10b981 !important;
  color: #04251c !important;
  font-weight: 700 !important;
  border-radius: 10px !important;
  box-shadow: 0 2px 10px rgba(16, 185, 129, 0.24) !important;
  transition: background-color var(--motion-fast, 180ms) var(--ease-standard, cubic-bezier(0.4, 0, 0.2, 1)),
              border-color var(--motion-fast, 180ms) var(--ease-standard, cubic-bezier(0.4, 0, 0.2, 1)),
              box-shadow var(--motion-fast, 180ms) var(--ease-standard, cubic-bezier(0.4, 0, 0.2, 1)),
              transform var(--motion-fast, 180ms) var(--ease-standard, cubic-bezier(0.4, 0, 0.2, 1)) !important;
}
:where(#portofolioPartialMount) .btn.primary:hover:not(:disabled){
  background: #34d399 !important;
  border-color: #34d399 !important;
  transform: translateY(-1px) !important;
}
:where(#portofolioPartialMount) .btn.primary:disabled{
  opacity: 0.45 !important;
  cursor: not-allowed !important;
  transform: none !important;
}
html.light :where(#portofolioPartialMount){
  background-color: #f8fafc !important;
  color: #0f172a !important;
}
html.light :where(#portofolioPartialMount) .app-header{
  background: rgba(255, 255, 255, 0.96) !important;
  border-bottom: 1px solid #cbd5e1 !important;
  box-shadow: 0 2px 10px rgba(15, 23, 42, 0.05) !important;
}
html.light :where(#portofolioPartialMount) .app-header h1,
html.light :where(#portofolioPartialMount) .brand-copy h1,
html.light :where(#portofolioPartialMount) .decision-hero h2,
html.light :where(#portofolioPartialMount) .card h2,
html.light :where(#portofolioPartialMount) .card h3{
  color: #0f172a !important;
}
html.light :where(#portofolioPartialMount) .brand-copy p,
html.light :where(#portofolioPartialMount) .decision-hero p,
html.light :where(#portofolioPartialMount) .card-head p,
html.light :where(#portofolioPartialMount) .muted,
html.light :where(#portofolioPartialMount) .fine-print{
  color: #475569 !important;
}
html.light :where(#portofolioPartialMount) .tab-strip{
  background: #f1f5f9 !important;
  border: 1px solid #cbd5e1 !important;
  box-shadow: inset 0 1px 2px rgba(15, 23, 42, 0.04) !important;
}
html.light :where(#portofolioPartialMount) .tab{
  color: #475569 !important;
  background: transparent !important;
  border-color: transparent !important;
}
html.light :where(#portofolioPartialMount) .tab:hover{
  color: #0f172a !important;
  background: rgba(255, 255, 255, 0.75) !important;
  border-color: #cbd5e1 !important;
}
html.light :where(#portofolioPartialMount) .tab.active,
html.light :where(#portofolioPartialMount) .tab[aria-selected="true"]{
  color: #047857 !important;
  background: #ffffff !important;
  border: 1px solid rgba(5, 150, 105, 0.48) !important;
  box-shadow: 0 2px 6px rgba(15, 23, 42, 0.08) !important;
}
html.light :where(#portofolioPartialMount) .decision-hero,
html.light :where(#portofolioPartialMount) .card,
html.light :where(#portofolioPartialMount) .table-wrap{
  background: #ffffff !important;
  border: 1px solid #cbd5e1 !important;
  box-shadow: 0 2px 8px rgba(15, 23, 42, 0.04) !important;
}
html.light :where(#portofolioPartialMount) .metric-grid{
  background: #f8fafc !important;
  border: 1px solid #cbd5e1 !important;
}
html.light :where(#portofolioPartialMount) .metric{
  border-left: 1px solid #cbd5e1 !important;
}
html.light :where(#portofolioPartialMount) .metric strong,
html.light :where(#portofolioPartialMount) .metric b{
  color: #0f172a !important;
}
html.light :where(#portofolioPartialMount) .metric span{
  color: #64748b !important;
}
html.light :where(#portofolioPartialMount) input,
html.light :where(#portofolioPartialMount) select,
html.light :where(#portofolioPartialMount) textarea{
  background: #f8fafc !important;
  border: 1px solid #94a3b8 !important;
  color: #0f172a !important;
}
html.light :where(#portofolioPartialMount) thead th{
  background-color: #f1f5f9 !important;
  color: #334155 !important;
  border-bottom: 1px solid #cbd5e1 !important;
}
html.light :where(#portofolioPartialMount) tbody td{
  background-color: #ffffff !important;
  color: #0f172a !important;
  border-bottom: 1px solid #e2e8f0 !important;
}
html.light :where(#portofolioPartialMount) tbody tr:hover{
  background-color: #f1f5f9 !important;
}
html.light :where(#portofolioPartialMount) tfoot td{
  background-color: #f8fafc !important;
  color: #0f172a !important;
  border-top: 2px solid #047857 !important;
}
html.light :where(#portofolioPartialMount) .empty-portfolio-cta,
[data-theme="light"] :where(#portofolioPartialMount) .empty-portfolio-cta{
  background: #f7f9f8 !important;
  border: 1px dashed #cbd5e1 !important;
}
html.light :where(#portofolioPartialMount) .empty-portfolio-cta h3,
[data-theme="light"] :where(#portofolioPartialMount) .empty-portfolio-cta h3{
  color: #17211e !important;
}
html.light :where(#portofolioPartialMount) .empty-portfolio-cta p,
[data-theme="light"] :where(#portofolioPartialMount) .empty-portfolio-cta p{
  color: #52605b !important;
}
html.light :where(#portofolioPartialMount) .empty,
[data-theme="light"] :where(#portofolioPartialMount) .empty{
  color: #52605b !important;
  border-color: #cbd5e1 !important;
}
html.light :where(#portofolioPartialMount) .note,
[data-theme="light"] :where(#portofolioPartialMount) .note{
  color: #1e40af !important;
  background: rgba(59, 130, 246, 0.08) !important;
  border-color: rgba(30, 64, 175, 0.28) !important;
}
html.light :where(#portofolioPartialMount) .error,
[data-theme="light"] :where(#portofolioPartialMount) .error{
  color: #b91c1c !important;
  background: rgba(239, 68, 68, 0.08) !important;
  border-color: rgba(185, 28, 28, 0.28) !important;
}
html.light :where(#portofolioPartialMount) .success,
[data-theme="light"] :where(#portofolioPartialMount) .success{
  color: #047857 !important;
  background: rgba(16, 185, 129, 0.08) !important;
  border-color: rgba(4, 120, 87, 0.28) !important;
}
html.light :where(#portofolioPartialMount) .btn,
[data-theme="light"] :where(#portofolioPartialMount) .btn{
  background: #ffffff !important;
  color: #17211e !important;
  border: 1px solid #cbd5e1 !important;
}
html.light :where(#portofolioPartialMount) .btn:hover,
[data-theme="light"] :where(#portofolioPartialMount) .btn:hover{
  background: #f1f5f9 !important;
  border-color: #94a3b8 !important;
}
html.light :where(#portofolioPartialMount) .btn.primary,
[data-theme="light"] :where(#portofolioPartialMount) .btn.primary{
  background: #17211e !important;
  color: #ffffff !important;
  border-color: #17211e !important;
}
html.light :where(#portofolioPartialMount) .btn.primary:hover,
[data-theme="light"] :where(#portofolioPartialMount) .btn.primary:hover{
  background: #000000 !important;
}
html.light :where(#portofolioPartialMount) .posture,
[data-theme="light"] :where(#portofolioPartialMount) .posture{
  background: #f1f5f9 !important;
  border: 1px solid #cbd5e1 !important;
}
html.light :where(#portofolioPartialMount) .posture span,
[data-theme="light"] :where(#portofolioPartialMount) .posture span{
  color: #64748b !important;
}
html.light :where(#portofolioPartialMount) .posture strong,
[data-theme="light"] :where(#portofolioPartialMount) .posture strong{
  color: #0f172a !important;
}
html.light :where(#portofolioPartialMount) .posture.good strong,
[data-theme="light"] :where(#portofolioPartialMount) .posture.good strong{ color: #047857 !important; }
html.light :where(#portofolioPartialMount) .posture.warn strong,
[data-theme="light"] :where(#portofolioPartialMount) .posture.warn strong{ color: #b45309 !important; }
html.light :where(#portofolioPartialMount) .posture.danger strong,
[data-theme="light"] :where(#portofolioPartialMount) .posture.danger strong{ color: #b91c1c !important; }
html.light :where(#portofolioPartialMount) .posture.neutral strong,
[data-theme="light"] :where(#portofolioPartialMount) .posture.neutral strong{ color: #334155 !important; }
html.light :where(#portofolioPartialMount) .decision-hero,
[data-theme="light"] :where(#portofolioPartialMount) .decision-hero{
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05) !important;
}
html.light :where(#portofolioPartialMount) .decision-hero:after,
[data-theme="light"] :where(#portofolioPartialMount) .decision-hero:after{
  display: none !important;
}
html.light :where(#portofolioPartialMount) .eyebrow,
[data-theme="light"] :where(#portofolioPartialMount) .eyebrow{
  color: #0369a1 !important;
}
html.light :where(#portofolioPartialMount) .action-item,
[data-theme="light"] :where(#portofolioPartialMount) .action-item,
html.light :where(#portofolioPartialMount) .timeline-item,
[data-theme="light"] :where(#portofolioPartialMount) .timeline-item,
html.light :where(#portofolioPartialMount) .journal-item,
[data-theme="light"] :where(#portofolioPartialMount) .journal-item,
html.light :where(#portofolioPartialMount) .candidate-item,
[data-theme="light"] :where(#portofolioPartialMount) .candidate-item,
html.light :where(#portofolioPartialMount) .sector-card,
[data-theme="light"] :where(#portofolioPartialMount) .sector-card,
html.light :where(#portofolioPartialMount) .budget-band,
[data-theme="light"] :where(#portofolioPartialMount) .budget-band{
  background: #f8fafc !important;
  border-color: #e2e8f0 !important;
}
html.light :where(#portofolioPartialMount) .budget-band span,
[data-theme="light"] :where(#portofolioPartialMount) .budget-band span{
  color: var(--ac-text-secondary, #52605b) !important;
}
html.light :where(#portofolioPartialMount) .action-copy strong,
[data-theme="light"] :where(#portofolioPartialMount) .action-copy strong,
html.light :where(#portofolioPartialMount) .timeline-copy strong,
[data-theme="light"] :where(#portofolioPartialMount) .timeline-copy strong,
html.light :where(#portofolioPartialMount) .sector-card strong,
[data-theme="light"] :where(#portofolioPartialMount) .sector-card strong,
html.light :where(#portofolioPartialMount) .budget-band strong,
[data-theme="light"] :where(#portofolioPartialMount) .budget-band strong{
  color: #0f172a !important;
}
html.light :where(#portofolioPartialMount) .pnl-up,
[data-theme="light"] :where(#portofolioPartialMount) .pnl-up,
html.light :where(#portofolioPartialMount) .text-emerald-400,
[data-theme="light"] :where(#portofolioPartialMount) .text-emerald-400,
html.light :where(#portofolioPartialMount) .text-emerald-300,
[data-theme="light"] :where(#portofolioPartialMount) .text-emerald-300,
html.light :where(#portofolioPartialMount) .pill.good,
[data-theme="light"] :where(#portofolioPartialMount) .pill.good{
  color: #047857 !important;
}
html.light :where(#portofolioPartialMount) .pnl-down,
[data-theme="light"] :where(#portofolioPartialMount) .pnl-down,
html.light :where(#portofolioPartialMount) .text-rose-400,
[data-theme="light"] :where(#portofolioPartialMount) .text-rose-400,
html.light :where(#portofolioPartialMount) .text-rose-300,
[data-theme="light"] :where(#portofolioPartialMount) .text-rose-300,
html.light :where(#portofolioPartialMount) .pill.danger,
[data-theme="light"] :where(#portofolioPartialMount) .pill.danger{
  color: #b91c1c !important;
}
html.light :where(#portofolioPartialMount) .pill.warn,
[data-theme="light"] :where(#portofolioPartialMount) .pill.warn{
  color: #b45309 !important;
}
html.light :where(#portofolioPartialMount) .pill.info,
[data-theme="light"] :where(#portofolioPartialMount) .pill.info{
  color: #1d4ed8 !important;
}
html.light :where(#portofolioPartialMount) .ticker-link,
[data-theme="light"] :where(#portofolioPartialMount) .ticker-link{
  color: #047857 !important;
}
html.light :where(#portofolioPartialMount) .ticker-link:hover,
[data-theme="light"] :where(#portofolioPartialMount) .ticker-link:hover{
  color: #065f46 !important;
  text-decoration: underline !important;
}
:where(#portofolioPartialMount) button:focus-visible,
:where(#portofolioPartialMount) a:focus-visible,
:where(#portofolioPartialMount) input:focus-visible,
:where(#portofolioPartialMount) select:focus-visible,
:where(#portofolioPartialMount) textarea:focus-visible,
:where(#portofolioPartialMount) .tab:focus-visible,
:where(#portofolioPartialMount) .btn:focus-visible{
  outline: 2px solid #10b981 !important;
  outline-offset: 2px !important;
}
:where(#portofolioPartialMount) .tab,
:where(#portofolioPartialMount) .btn,
:where(#portofolioPartialMount) .card,
:where(#portofolioPartialMount) .metric-grid,
:where(#portofolioPartialMount) .ticker-link{
  transition: background-color var(--motion-fast, 180ms) var(--ease-standard, cubic-bezier(0.4, 0, 0.2, 1)),
              border-color var(--motion-fast, 180ms) var(--ease-standard, cubic-bezier(0.4, 0, 0.2, 1)),
              box-shadow var(--motion-fast, 180ms) var(--ease-standard, cubic-bezier(0.4, 0, 0.2, 1)),
              color var(--motion-fast, 180ms) var(--ease-standard, cubic-bezier(0.4, 0, 0.2, 1)) !important;
}
@media (max-width: 767px){
:where(#portofolioPartialMount) #tabStrip,
:where(#portofolioPartialMount) #tabStrip.tab-strip{
    display: none !important;
  }
:where(#portofolioPartialMount) #pccMobileNav{
    display: block !important;
  }
}
@media (min-width: 768px) and (max-width: 1180px){
:where(#portofolioPartialMount) #tabStrip,
:where(#portofolioPartialMount) #tabStrip.tab-strip{
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
  }
:where(#portofolioPartialMount) #tabStrip.tab-strip > .tab{
    width: auto !important;
    min-width: max-content !important;
    flex: 0 0 auto !important;
    white-space: nowrap !important;
  }
:where(#portofolioPartialMount) #pccMobileNav{
    display: none !important;
  }
}
@media (min-width: 1181px){
:where(#portofolioPartialMount) #tabStrip,
:where(#portofolioPartialMount) #tabStrip.tab-strip{
    display: grid !important;
    grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
    overflow: visible !important;
  }
:where(#portofolioPartialMount) #tabStrip.tab-strip > .tab{
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    flex: none !important;
    padding-left: 8px !important;
    padding-right: 8px !important;
    white-space: normal !important;
    text-align: center !important;
  }
:where(#portofolioPartialMount) #pccMobileNav{
    display: none !important;
  }
}
@media (min-width: 768px) and (pointer: coarse){
:where(#portofolioPartialMount) #tabStrip.tab-strip > .tab{
    min-width: 44px !important;
    min-height: 44px !important;
  }
}

:where(#portofolioPartialMount) #page-ai.active{
  scroll-margin-top: 82px;
}
:where(#portofolioPartialMount) #page-ai .ai-shell{
  grid-template-columns: minmax(0, 3.2fr) minmax(260px, .8fr);
  gap: 20px;
  align-items: start;
}
:where(#portofolioPartialMount) #page-ai .ai-chat{
  height: clamp(560px, calc(100dvh - 96px), 820px);
  height: clamp(660px, calc(100dvh - 110px), 960px);
  min-height: 620px;
}
:where(#portofolioPartialMount) #page-ai .ai-messages{
  min-height: 400px;
  padding-bottom: 22px;
}
:where(#portofolioPartialMount) #page-ai .ai-compose{
  position: relative;
  z-index: 3;
  background: linear-gradient(180deg, rgba(8,15,24,.96), rgba(8,15,24,1));
}
:where(#portofolioPartialMount) #page-ai .ai-shell > aside{
  position: sticky;
  top: 82px;
  max-height: calc(100dvh - 96px);
  overflow: auto;
}
@media (min-width: 1081px) and (max-height: 760px){
:where(#portofolioPartialMount) #page-ai .ai-chat{
    height: calc(100dvh - 78px);
    min-height: 560px;
  }
}
@media (max-width: 1080px){
:where(#portofolioPartialMount) #page-ai .ai-shell{
    grid-template-columns: minmax(0, 1fr);
  }
:where(#portofolioPartialMount) #page-ai .ai-chat{
    height: clamp(580px, 78dvh, 760px);
    min-height: 560px;
  }
:where(#portofolioPartialMount) #page-ai .ai-shell > aside{
    position: static;
    max-height: none;
    overflow: visible;
  }
}
@media (max-width: 760px){
:where(#portofolioPartialMount) #page-ai.active{
    scroll-margin-top: 68px;
  }
:where(#portofolioPartialMount) #page-ai .ai-chat{
    height: clamp(540px, 76dvh, 700px);
    min-height: 520px;
  }
:where(#portofolioPartialMount) #page-ai .ai-messages{
    min-height: 320px;
  }
}
