/* Interactive knowledge tools */
/* Main-category network graph */
.experience-grid .network-card{grid-column:1/-1;min-width:0}.ng-toolbar{display:flex;justify-content:space-between;gap:15px;align-items:center;margin:10px 0 16px}.ng-toolbar p{margin:0!important}.ng-toolbar p strong,.ng-toolbar p span{display:block}.ng-toolbar p strong{color:#19885c;font-size:13px}.ng-toolbar p span{font-size:11px;margin-top:5px}.ng-toolbar>div{display:flex;gap:7px;align-items:center;flex:none}.ng-toolbar button{border:1px solid #b6ddc7;background:#eefaf3;color:#176d48;border-radius:9px;min-width:32px;height:32px;font-size:12px}.ng-toolbar button:disabled{opacity:.45}.ng-toolbar output{font:11px ui-monospace,monospace;color:#719482;min-width:35px;text-align:center}.ng-viewport{height:670px;max-width:100%;overflow:auto;background:radial-gradient(ellipse at center,#0c4b3d,#041e23);border:1px solid #318461;border-radius:18px;cursor:grab;scrollbar-color:#38936d #092f2c;scrollbar-width:thin;overscroll-behavior:contain}.ng-dragging{cursor:grabbing;user-select:none}.ng-size{position:relative}.ng-scene{position:absolute;left:0;top:0;width:1290px;height:890px;transform-origin:0 0}.ng-scene svg{position:absolute;inset:0;width:100%;height:100%}.ng-scene path{fill:none;stroke:#46d59e4a;stroke-width:1.6;transition:stroke .18s,opacity .18s}.ng-node{position:absolute;width:220px;min-height:68px;padding:11px 14px 10px 30px;transform:translate(-50%,-50%);border:1px solid #5adfa789;border-radius:13px;background:linear-gradient(145deg,#0a5749,#103b3b);color:#d9fff0;box-shadow:0 0 18px #19e49b17;text-align:left;cursor:pointer;transition:background .18s,opacity .18s,box-shadow .18s;z-index:1}.ng-node strong{font-size:14px;line-height:1.3;display:block;overflow-wrap:anywhere}.ng-node small{display:block;color:#75bda2;font:10px ui-monospace,monospace;margin-top:6px}.ng-node-dot{position:absolute;left:13px;top:17px;width:7px;height:7px;background:#48edaa;border-radius:50%;box-shadow:0 0 9px #34eaa6}.ng-highlight .ng-node:not(.ng-related){opacity:.38}.ng-highlight path:not(.ng-lit){opacity:.15}.ng-scene path.ng-lit{stroke:#74f9bb;stroke-width:2.6;filter:drop-shadow(0 0 4px #42f3ae)}.ng-node.ng-selected,.ng-node:hover{border-color:#b5ffd6;background:linear-gradient(145deg,#107b5f,#135743);box-shadow:0 0 22px #4cebad50}.ng-node:focus-visible,.ng-toolbar button:focus-visible,.ng-viewport:focus-visible{outline:3px solid #a5f7c3;outline-offset:4px}.ng-caption{font-size:11px!important;color:#70917f!important;margin-top:14px!important}body.night .ng-toolbar p strong{color:#8fecb8}body.night .ng-caption{color:#a4c9b1!important}@media(max-width:620px){.ng-toolbar{align-items:start;flex-direction:column;gap:10px}.ng-viewport{height:520px}}
.experience{margin:40px 3.5% 42px}.experience-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:19px}.experience-head h2{font-size:28px;margin:7px 0 0;color:#123f31}.experience-head>span{font-size:12px;color:#749283}.experience-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.feature-card{position:relative;overflow:hidden;background:linear-gradient(135deg,#ffffffef,#eef8f2d9);border:1px solid #d6ebdf;border-radius:20px;padding:21px;box-shadow:0 9px 28px #14563d0b;min-height:235px;backdrop-filter:blur(12px)}.feature-card:before{content:"";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,#8be7b0,transparent)}.feature-card p{font-size:12px;color:#6d8879;line-height:1.55;margin:11px 0 0}.feature-title span,.modal-kicker{font:700 10px/1.3 ui-monospace,Consolas,monospace;letter-spacing:.14em;color:#149268}.feature-title h3{font-size:18px;color:#174a39;margin:8px 0 13px;letter-spacing:-.025em}.company-card{grid-column:span 2}.company-flow{border-radius:13px;padding:18px 0;overflow:hidden;background:radial-gradient(circle at center,#0d755a,#073b34);border:1px solid #9eebc839;mask-image:linear-gradient(to right,transparent,#000 5%,#000 95%,transparent)}.company-lane{display:flex;gap:12px;width:max-content;animation:company-drift 30s linear infinite}.company-flow:hover .company-lane,.company-flow:focus-within .company-lane{animation-play-state:paused}.company-token{flex:none;color:#eaffec;border:1px solid #b5f6cb74;background:#d8ffe31c;border-radius:10px;padding:13px 16px;font:750 14px/1 ui-monospace,Consolas,monospace;box-shadow:0 0 20px #62df9740}.company-token:hover{background:#71dca242}.company-token small{display:block;margin-top:7px;color:#a6f1bf;font-size:10px}.data-ping{display:inline-block;width:5px;height:5px;border-radius:50%;background:#68f5a5;box-shadow:0 0 9px #80ffc0;margin-right:8px;vertical-align:2px}
.network-map{height:155px;position:relative;border-radius:13px;background:#073d34;overflow:hidden}.network-map svg{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:#42d59085;stroke-width:1.8;filter:drop-shadow(0 0 5px #3deca0);animation:network-glow 3.6s ease-in-out infinite alternate}.network-node{position:absolute;color:#d6ffdf;background:#0d765cd9;border:1px solid #8be7b18c;border-radius:999px;padding:5px 8px;font-size:9px;font-weight:750;box-shadow:0 0 13px #3deb9a46;transform:translate(-50%,-50%);white-space:nowrap}.network-node:hover{background:#22ae77}.node-0{left:16%;top:25%}.node-1{left:49%;top:18%}.node-2{left:83%;top:21%}.node-3{left:21%;top:76%}.node-4{left:57%;top:75%}.node-5{left:84%;top:75%}
.zone-choice{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#688476;font-size:11px}.zone-choice select{border:1px solid #c5e5d3;border-radius:8px;padding:6px 8px;background:white;color:#225943;max-width:155px}.market-clocks{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:12px}.market-clock{display:grid;grid-template-columns:9px 1fr auto;gap:3px 7px;background:#f3faf5;border:1px solid #deeee4;border-radius:10px;padding:9px;color:#174b39}.market-dot{width:7px;height:7px;border-radius:50%;background:#acb7b1;align-self:center}.market-dot.open{background:#18c47a;box-shadow:0 0 0 3px #18c47a29}.market-clock strong{font-size:12px}.clock-time{font:750 13px/1 ui-monospace,Consolas,monospace}.market-clock small,.market-clock em{grid-column:2/4;color:#759385;font-size:10px;font-style:normal}.market-clock em{color:#316e4f;font-weight:700}
.academy-progress{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#648574}.academy-progress strong{font-size:18px;color:#0d754e}.progress-track{height:8px;border-radius:999px;background:#dfeee5;overflow:hidden;margin-top:10px}.progress-track i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#13bb75,#86e5a6)}.feature-action{border:0;border-radius:10px;background:#087c54;color:white;padding:10px 13px;font-size:12px;font-weight:750;margin-top:13px;cursor:pointer}.feature-action:hover{background:#056848}.quiz-box{display:grid;gap:7px}.quiz-box>small{color:#839c8e}.quiz-box>strong{font-size:14px;line-height:1.4;color:#194a38;margin-bottom:4px}.quiz-box>[data-quiz-answer]{text-align:left;border:1px solid #d5e9dd;border-radius:8px;background:white;padding:8px 10px;font-size:11px;color:#285742}.quiz-box>[data-quiz-answer]:hover{border-color:#32b87c}.quiz-box>[data-quiz-answer].correct{border-color:#13b676;background:#def8e8}.quiz-box>[data-quiz-answer].incorrect{border-color:#d38675;background:#fff0ec}.quiz-box>[data-quiz-answer]:disabled{cursor:default}.quiz-finish strong{font-size:30px;color:#0a8d5c}.notice-item{display:block;width:100%;text-align:left;border:0;border-left:3px solid #18b573;background:#f2faf5;border-radius:0 8px 8px 0;padding:9px 11px;margin-bottom:8px;color:#245744}.notice-item.seen{opacity:.65;border-left-color:#9cbeaa}.notice-item span,.notice-item strong,.notice-item small{display:block}.notice-item span{font-size:9px;color:#6c9279}.notice-item strong{font-size:12px;margin:3px 0}.notice-item small{font-size:10px;color:#718d7a;line-height:1.45}
.section-mode #experience{display:none}
.notice-toast{position:fixed;right:20px;top:90px;z-index:45;width:min(255px,calc(100vw - 40px));padding:14px 17px;text-align:left;border:1px solid #72db9b;border-radius:14px;background:linear-gradient(135deg,#073e32,#0b7651);color:#edfff2;box-shadow:0 16px 38px #002e236b;animation:toast-in .4s ease-out}.notice-toast span,.notice-toast strong,.notice-toast small{display:block}.notice-toast span{color:#89e9b0;font-size:10px;letter-spacing:.1em}.notice-toast strong{font-size:15px;margin:6px 0}.notice-toast small{font-size:11px;color:#baf1d2}@keyframes toast-in{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}
.tile{transform-style:preserve-3d;position:relative;background-image:radial-gradient(circle at var(--glow-x,50%) var(--glow-y,50%),#c9ffe942,transparent 55%);backdrop-filter:blur(8px)}.tile:before{content:"";position:absolute;inset:0;border-radius:inherit;border:1px solid transparent;pointer-events:none;box-shadow:inset 0 1px #ffffffbb}.tile:hover{border-color:#55d69a;box-shadow:0 12px 30px #148c5a2d,0 0 0 1px #95efbc}.tile i,.tile strong,.tile small{transform:translateZ(20px)}
#theme-switch,#command-launch{border:1px solid #cde9d8;border-radius:10px;background:#f2faf5;color:#21694c;font-size:12px;font-weight:750;padding:9px 11px;white-space:nowrap}#theme-switch:hover,#command-launch:hover{background:#def8e9}
.assistant-shell{position:fixed;right:20px;bottom:20px;z-index:30}#assistant-launch{display:flex;align-items:center;gap:9px;background:linear-gradient(135deg,#075240,#0a9466);color:white;border:1px solid #8ef2b4;border-radius:20px;padding:8px 13px 8px 8px;box-shadow:0 12px 30px #033d32aa;text-align:left}#assistant-launch:hover{transform:translateY(-2px)}.assistant-name{font-weight:800;font-size:12px;line-height:1.15}.assistant-name small{font-weight:500;color:#c3f7d8}.holo-robot{position:relative;display:grid;place-items:center;width:44px;height:43px;background:linear-gradient(135deg,#8cefd3,#25ba9d77);border:2px solid #ccfff1;border-radius:14px 14px 19px 19px;box-shadow:inset 0 0 12px #e6fff8,0 0 17px #5cffdb;animation:robot-float 3s ease-in-out infinite}.holo-robot .antenna{position:absolute;top:-11px;width:3px;height:10px;background:#bffff0}.holo-robot .antenna:after{content:"";position:absolute;top:-5px;left:-3px;width:9px;height:9px;border-radius:50%;background:#d5fff0;box-shadow:0 0 8px #8cffd0}.holo-robot .eyes{font-size:24px;line-height:0;color:#075642;letter-spacing:5px;margin-left:5px}.holo-robot .mouth{position:absolute;bottom:7px;width:12px;height:4px;border-bottom:2px solid #087457;border-radius:50%}#assistant-panel{position:absolute;bottom:75px;right:0;width:min(380px,calc(100vw - 25px));max-height:70vh;overflow:auto;padding:16px;border-radius:17px;background:#fafffb;border:1px solid #bde5ce;box-shadow:0 18px 55px #00291e70;color:#254b3b}#assistant-panel p{font-size:12px;line-height:1.55;color:#6a8b79}.assistant-head{display:flex;justify-content:space-between;align-items:center;font-size:13px;font-weight:800}.assistant-head button{border:0;background:transparent;color:#56846b}.assistant-found{font-weight:700}
#feature-modal[hidden],#assistant-panel[hidden]{display:none!important}#feature-modal{position:fixed;inset:0;z-index:60;display:grid;place-items:start center;padding:10vh 14px 20px}.feature-backdrop{position:absolute;inset:0;background:#001f19aa;backdrop-filter:blur(7px)}.feature-dialog{position:relative;width:min(620px,100%);max-height:80vh;overflow:auto;background:#fafffb;border:1px solid #cbebd8;border-radius:21px;padding:26px;box-shadow:0 22px 70px #001f1abb}.feature-dialog h2{font-size:24px;margin:8px 0 12px}.feature-dialog p{color:#648276;font-size:13px;line-height:1.6}#feature-close{position:absolute;right:17px;top:15px;border:0;background:#e9f5ec;border-radius:8px;width:31px;height:31px;color:#286f4d}.tool-input{width:100%;border:1px solid #bcdfcd;border-radius:11px;background:white;padding:12px 14px;color:#184636;font-size:15px;outline:none}.tool-input:focus{border-color:#13a66d;box-shadow:0 0 0 3px #dff8e9}.tool-results{display:grid;gap:7px;margin-top:13px;max-height:49vh;overflow:auto}.tool-results button{display:block;border:1px solid #e1eee5;border-radius:10px;background:#f5fbf7;text-align:left;padding:11px 13px;color:#214e3a}.tool-results button:hover{border-color:#58ca92;background:#e8f9ef}.tool-results small,.tool-results strong,.tool-results span{display:block}.tool-results small{color:#18845c;font-size:10px}.tool-results strong{font-size:14px;margin:3px 0}.tool-results span{font-size:11px;color:#739281;line-height:1.5}.search-hints{padding:18px 0;font-size:12px;color:#789082}.quiet{color:#869c8e!important;font-size:11px!important}.modal-open{overflow:hidden}
.reply-tools{margin-top:31px;padding:20px;border:1px solid #cfebd9;border-radius:14px;background:linear-gradient(145deg,#f3fbf6,#e9f7ee)}.reply-tools-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.reply-tools-head strong{color:#125b3e}.reply-tools-head small{color:#779683;font-size:11px}.reply-options{display:flex;flex-wrap:wrap;gap:7px;margin:15px 0}.reply-options button{border:1px solid #c8e7d4;background:white;color:#26704f;border-radius:9px;padding:8px 11px;font-size:12px;font-weight:700}.reply-options button.selected{background:#118458;border-color:#118458;color:white}.reply-generated{white-space:pre-line;color:#315a43;line-height:1.7;font-size:14px;background:#fff;border-radius:10px;padding:17px;max-height:310px;overflow:auto}.reply-tools .feature-action:disabled{opacity:.45;cursor:default}
#cursor-trail{position:fixed;left:-10px;top:-10px;width:20px;height:20px;border-radius:50%;background:radial-gradient(circle,#4dffc2aa,transparent 70%);box-shadow:0 0 12px #45e6a988;pointer-events:none;z-index:90;mix-blend-mode:screen}.cursor-ring{position:fixed;width:12px;height:12px;margin:-6px 0 0 -6px;border:2px solid #23d88c;border-radius:50%;pointer-events:none;z-index:90;animation:ring-out .6s ease-out forwards}.coin-burst{position:fixed;inset:0;pointer-events:none;z-index:100}.coin-burst span{position:absolute;left:50%;top:45%;color:#ffdc76;font:bold 25px/1 Arial;text-shadow:0 0 10px #f3ba50;animation:burst 2.1s ease-out forwards;--angle:calc(var(--i)*20deg);transform:rotate(var(--angle))}.golden-bull{text-align:center}.golden-bull img{display:block;max-height:38vh;max-width:100%;margin:auto;filter:sepia(1) saturate(4) hue-rotate(355deg) brightness(1.6) drop-shadow(0 0 18px #e8ba43)}
body.night{background:#071c1b;color:#d6eee2}body.night main{background:#0b2220}body.night header{background:#0a302b;border-color:#285444}body.night header strong{color:#e1f9e8}body.night header span{color:#8eb9a1}body.night .modebar{background:#0d3029;border-color:#24513d}body.night .content,body.night .official-view .content{background:#0b2220}body.night h2,body.night .experience-head h2{color:#d8f9e5}body.night .tile,body.night .feature-card,body.night .official-card,body.night .rows,body.night .detail{background:#123b30;border-color:#315b47;color:#e5f8eb}body.night .tile strong,body.night .feature-title h3,body.night .official-row strong,body.night .detail h1{color:#e4ffeb}body.night .official-row,body.night .row{background:#123b30;border-color:#2d5b45;color:#e2ffea}body.night .official-row:hover,body.night .row:hover{background:#1b4c39}body.night .answer-body p,body.night .detail p,body.night .detail li{color:#c2e7d1}body.night .source-note{color:#bfe8cf}body.night .market-clock,body.night .notice-item,body.night .reply-tools{background:#1b4b39;border-color:#366b4d}body.night .market-clock,body.night .market-clock em,body.night .academy-progress strong,body.night .quiz-box>strong,body.night .notice-item strong,body.night .reply-tools-head strong,body.night .reply-generated{color:#d8f7e0}body.night .quiz-box>[data-quiz-answer],body.night .reply-generated{background:#14382d;border-color:#467353;color:#d8f7e0}body.night #theme-switch,body.night #command-launch{background:#154c37;color:#daf7e4;border-color:#3b7956}body.night .skyline .tower:after{opacity:.9}
@keyframes company-drift{to{transform:translateX(-40%)}}@keyframes network-glow{to{opacity:.35}}@keyframes robot-float{50%{transform:translateY(-4px)}}@keyframes ring-out{to{transform:scale(5);opacity:0}}@keyframes burst{to{transform:rotate(var(--angle)) translateX(220px) rotate(360deg);opacity:0}}
@media(max-width:900px){.experience-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.company-card{grid-column:span 2}.network-card{grid-column:span 1}}
@media(max-width:620px){.experience{margin:31px 16px}.experience-head{align-items:flex-start}.experience-head h2{font-size:24px}.experience-head>span{display:none}.experience-grid{grid-template-columns:1fr}.company-card,.network-card{grid-column:span 1}.feature-card{min-height:0;padding:18px}.feature-card p{font-size:11px}.market-clocks{grid-template-columns:repeat(2,1fr)}#theme-switch,#command-launch{font-size:10px;padding:7px 8px}#command-launch{font-size:0}#command-launch:before{content:'⌕';font-size:22px}.assistant-shell{right:12px;bottom:12px}.feature-dialog{padding:20px}.reply-tools{padding:15px}.reply-tools-head{align-items:flex-start;flex-direction:column}.reply-options button{font-size:11px}}
.error-card{grid-column:span 2;min-height:0;background:radial-gradient(circle at 95% 15%,#d5fbe4,#f8fffa 57%)}.error-card-inner{display:flex;align-items:center;justify-content:space-between;gap:22px}.error-card-inner p{max-width:500px;margin:0}.error-card .feature-action{flex:none}.error-examples{margin-top:17px;color:#6f9280;font-size:12px}.error-examples button,.error-suggestions button{border:1px solid #bce5cd;border-radius:20px;padding:7px 10px;background:#f3fff7;color:#167b50;font-size:12px}.error-examples button:hover,.error-suggestions button:hover{background:#ddfae8}.error-input-label{display:block;color:#416f55;font-size:12px;font-weight:700;margin:15px 0 7px}.error-query{resize:vertical;min-height:84px;line-height:1.5}.error-hint,.error-match-note{font-size:12px!important;margin:15px 0 11px!important}.error-suggestions{display:flex;gap:7px;flex-wrap:wrap}.error-no-match{padding:16px 0}.error-no-match strong{color:#205d3f}.error-result{border:1px solid #d8eadd;border-radius:15px;background:#fff;margin:14px 0;padding:18px}.error-result-heading span{font:700 10px ui-monospace,monospace;letter-spacing:.12em;color:#169464}.error-result-heading h3{margin:6px 0 12px;font-size:18px;color:#19533a}.error-result h4{font-size:13px;color:#276747;margin:18px 0 7px}.error-result ul,.error-result ol{padding-left:20px;margin:0}.error-result li{font-size:13px;line-height:1.6;color:#536f5c;margin:5px 0}.error-templates{display:grid;grid-template-columns:1fr 1fr;gap:10px}.error-templates>div{display:flex;flex-direction:column;border:1px solid #dceee2;border-radius:12px;background:#f5fcf7;padding:13px}.error-templates strong{color:#167950;font-size:12px}.error-templates p{color:#365a43!important;font-size:12px!important;line-height:1.6;margin:9px 0 15px}.error-templates button{margin-top:auto;align-self:flex-start;border:1px solid #b9dec9;border-radius:8px;background:white;padding:8px 11px;color:#16754d;font-size:12px}.error-open-article{margin-top:14px;padding:0;background:transparent;border:0;color:#118459;font-weight:700;font-size:13px}#feature-modal:has(.error-query) .feature-dialog{width:min(790px,100%)}.error-result button:focus-visible,.error-card button:focus-visible,.error-suggestions button:focus-visible{outline:3px solid #14ab70;outline-offset:2px}@media(max-width:900px){.error-card{grid-column:span 2}}@media(max-width:620px){.error-card{grid-column:span 1}.error-card-inner{display:block}.error-card .feature-action{margin-top:14px}.error-templates{grid-template-columns:1fr}.error-result{padding:14px}}
@media(max-width:390px){#theme-switch{font-size:0}#theme-switch:before{content:'◐';font-size:18px}.market-clocks{gap:6px}.market-clock{padding:7px}}
@media(prefers-reduced-motion:reduce){.company-lane,.network-map svg,.holo-robot,.cursor-ring,.coin-burst span{animation:none!important}#cursor-trail,.coin-burst{display:none!important}.tile{transform:none!important}}

/* Portrait avatar for the existing knowledge-base assistant. */
.assistant-avatar{display:block;flex:none;width:42px;height:42px;object-fit:cover;object-position:center;border-radius:50%;border:2px solid #7cebb1;box-shadow:0 0 12px #34d88b55}
.assistant-avatar-launch{width:52px;height:52px;transition:box-shadow .2s ease,transform .2s ease}
#assistant-launch:hover .assistant-avatar-launch{box-shadow:0 0 19px #34d88b99;transform:scale(1.04)}
#assistant-launch:focus-visible{outline:3px solid #7cebb1;outline-offset:4px}
.assistant-identity{display:flex;align-items:center;gap:10px}
.assistant-identity span{display:block}.assistant-identity small{display:block;font-size:11px;font-weight:500;color:#648276;margin-top:3px}
@media(prefers-reduced-motion:reduce){.assistant-avatar-launch{transition:none}#assistant-launch:hover .assistant-avatar-launch{transform:none}}
