.jinglan-logo{display:inline-flex;align-items:center;width:164px;flex-shrink:0}.jinglan-logo img{display:block;width:100%;height:auto}.jinglan-logo .jinglan-logo-dark{display:none}.jinglan-logo-mark{width:28px}[data-theme=dark] .jinglan-logo .jinglan-logo-light{display:none}[data-theme=dark] .jinglan-logo .jinglan-logo-dark{display:block}.assessment-guidance[data-v-ad15a1ff]{border-top:1px solid var(--color-border);padding-top:16px;margin-top:16px;line-height:1.8;overflow-wrap:anywhere;color:var(--color-text)}.assessment-guidance>button[data-v-ad15a1ff]{margin:0 8px 8px 0;min-height:44px;white-space:normal}.guidance-consent[data-v-ad15a1ff],.guidance-preview[data-v-ad15a1ff],.guidance-result[data-v-ad15a1ff]{margin-top:12px;padding:16px;background:var(--color-bg-soft);border:1px solid var(--color-border);border-radius:12px}.assessment-guidance article[data-v-ad15a1ff]{padding:12px 0;border-bottom:1px solid var(--color-border)}.assessment-guidance label[data-v-ad15a1ff]{display:flex;align-items:flex-start;gap:8px;margin-bottom:12px}.assessment-guidance h3[data-v-ad15a1ff]{font-size:18px}.assessment-guidance h4[data-v-ad15a1ff]{font-size:16px}.assessment-guidance a[data-v-ad15a1ff]{display:inline-block;margin:8px 0}.assessment-guidance[data-v-ad15a1ff] :focus-visible{outline:3px solid #2586aa;outline-offset:3px}.target-match-card{background:#fff;border:1px solid #dcecf2;border-radius:18px;padding:24px;min-width:0;color:#173e56}.target-breadcrumb{font-size:12px;color:#637f8f;overflow-wrap:anywhere;margin:0 0 12px}.target-card-heading{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.target-card-heading h3{font-size:19px;margin:10px 0}.target-score{font-size:25px;color:#187b97;flex-shrink:0;text-align:right}.target-score small{font-size:12px;font-weight:400;display:block;color:#526f80}.target-chip,.target-tags span{display:inline-block;border-radius:8px;background:#edf7fa;color:#28657c;padding:5px 8px;font-size:12px}.target-tags{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.target-meta{font-size:13px;color:#597385;line-height:1.7}.target-match-card details{margin:16px 0;font-size:14px;line-height:1.8;overflow-wrap:anywhere}.target-match-card summary{cursor:pointer;color:#16637c}.target-skill-list{padding:0;list-style:none}.target-skill-list li{display:flex;flex-wrap:wrap;gap:8px 16px;padding:8px 0;border-bottom:1px solid #edf3f6}.target-source-list{padding-left:18px;max-height:200px;overflow:auto}.target-match-card a{overflow-wrap:anywhere}.target-match-card button:focus-visible,.target-match-card a:focus-visible,.target-match-card summary:focus-visible{outline:3px solid #268fb0;outline-offset:3px}@media(max-width:600px){.target-match-card{padding:16px}.target-card-heading{flex-wrap:wrap}.target-score{text-align:left}.target-card-heading h3{font-size:17px}}body.target-prompt-open{overflow:hidden}.target-reminder-offer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 24px;background:#eef8fc;border-bottom:1px solid #d5e9f1;color:#214d65}.target-reminder-offer p{margin:6px 0 0;font-size:13px;line-height:1.7;max-width:720px}.target-reminder-offer .button-row{flex-shrink:0}.target-reminder-message{margin:8px 24px;font-size:13px;color:#775f39}.target-prompt-backdrop{position:fixed;inset:0;background:#15374966;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:2000;display:grid;place-items:center;padding:24px;box-sizing:border-box}.target-prompt-card{width:min(900px,100%);max-height:calc(100dvh - 48px);overflow:auto;background:#f5fbfd;border:1px solid #d9ebf1;border-radius:24px;padding:28px;box-shadow:0 16px 60px #12374730;box-sizing:border-box;color:#173e56}.target-prompt-card>header{display:flex;align-items:center;justify-content:space-between;gap:16px}.target-prompt-card h2{font-size:24px;line-height:1.5;margin:4px 0}.target-eyebrow{color:#29748b;font-size:13px;margin:0}.target-prompt-results{display:grid;gap:16px;margin:20px 0}.target-prompt-card footer{padding-top:8px}.target-prompt-card :focus-visible{outline:3px solid #268fb0;outline-offset:3px}@media(max-width:767px){.target-reminder-offer{align-items:stretch;flex-direction:column;padding:12px 16px}.target-reminder-offer .button-row{flex-wrap:wrap}.target-prompt-backdrop{padding:12px}.target-prompt-card{padding:16px;max-height:calc(100dvh - 24px);border-radius:18px}.target-prompt-card h2{font-size:20px}.target-prompt-card>header{align-items:flex-start}.target-prompt-card footer button{min-height:44px}}@media(prefers-reduced-motion:reduce){.target-prompt-backdrop{-webkit-backdrop-filter:none;backdrop-filter:none}}.assistant-avatar[data-v-3138fd54]{display:inline-flex;flex:none;align-items:center;justify-content:center;border-radius:50%;background:radial-gradient(ellipse,rgba(128,220,234,.2),transparent 70%)}img[data-v-3138fd54]{width:100%;height:100%;object-fit:contain;transform-origin:50% 85%}.idle img[data-v-3138fd54]{animation:breathe-3138fd54 4s ease-in-out infinite}.greeting img[data-v-3138fd54]{animation:greet-3138fd54 .7s ease-in-out 1}.listening img[data-v-3138fd54]{transform:rotate(-3deg)}.thinking img[data-v-3138fd54]{animation:breathe-3138fd54 1.2s ease-in-out infinite}.speaking img[data-v-3138fd54]{animation:breathe-3138fd54 2s ease-in-out infinite}.success img[data-v-3138fd54]{animation:greet-3138fd54 .45s ease-in-out 1}.error[data-v-3138fd54]{background:radial-gradient(ellipse,rgba(233,164,138,.17),transparent 70%)}@keyframes breathe-3138fd54{50%{transform:translateY(-4px)}}@keyframes greet-3138fd54{35%{transform:rotate(-5deg)}70%{transform:rotate(4deg)}}@media(prefers-reduced-motion:reduce){img[data-v-3138fd54]{animation:none!important;transform:none!important}}.assistant-sources[data-v-da981bb9]{margin-top:16px;padding:12px 16px;border-left:3px solid var(--color-primary, #318da8);background:var(--color-bg-soft, #f2f9fb);border-radius:8px;font-size:13px;line-height:1.7;overflow-wrap:anywhere}p[data-v-da981bb9]{margin:4px 0;color:var(--color-text-secondary, #526775)}ol[data-v-da981bb9]{padding-left:20px;margin:8px 0}li[data-v-da981bb9]{margin-top:6px}a[data-v-da981bb9]{color:var(--color-primary, #227c99)}small[data-v-da981bb9]{font-size:12px}.service-info[data-v-5c5f8b67]{font-size:12px;line-height:1.8;color:var(--color-text-secondary);border:1px solid var(--color-border);border-radius:14px;padding:10px 14px;margin-top:14px}summary[data-v-5c5f8b67]{cursor:pointer;color:var(--color-text)}.service-details[data-v-5c5f8b67]{max-width:900px;padding-top:12px}.service-details h3[data-v-5c5f8b67]{font-size:13px;color:var(--color-text);margin:12px 0 4px}ul[data-v-5c5f8b67]{padding-left:20px}a[data-v-5c5f8b67]{color:var(--color-primary, #218dab)}.assistant-interview-dialog[data-v-e054818b]{width:min(820px,calc(100vw - 24px));max-width:calc(100vw - 24px);height:min(820px,calc(100dvh - 32px));max-height:calc(100dvh - 32px);padding:0;border:1px solid var(--color-border);border-radius:20px;background:var(--color-bg);color:var(--color-text)}.assistant-interview-dialog[open][data-v-e054818b]{display:flex;flex-direction:column}.assistant-interview-dialog[data-v-e054818b]::backdrop{background:#102f454d}header[data-v-e054818b],nav[data-v-e054818b],footer[data-v-e054818b]{padding:16px 24px;flex:none}header[data-v-e054818b]{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--color-border)}h2[data-v-e054818b]{font-size:22px;margin:4px 0}h3[data-v-e054818b]{font-size:17px}p[data-v-e054818b]{line-height:1.65;margin:8px 0}small[data-v-e054818b]{font-size:12px;color:var(--color-text-secondary)}nav[data-v-e054818b]{display:flex;gap:12px;padding-block:8px}button[data-v-e054818b]{min-height:40px;padding:8px 12px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-bg);color:inherit;cursor:pointer}button[data-v-e054818b]:disabled{opacity:.5;cursor:default}button[data-v-e054818b]:focus-visible,input[data-v-e054818b]:focus-visible,select[data-v-e054818b]:focus-visible{outline:2px solid #28a9c2;outline-offset:2px}button[aria-pressed=true][data-v-e054818b]{background:#e4f5f9;color:#07617c}.interview-body[data-v-e054818b]{overflow:auto;min-height:0;flex:1;padding:0 24px 20px}.interview-consents[data-v-e054818b]{padding:12px;border:1px solid var(--color-border);border-radius:12px}.interview-consents label[data-v-e054818b]{display:flex;gap:8px;align-items:start;margin:12px 0;font-size:14px}.interview-start[data-v-e054818b]{display:grid;gap:12px}.interview-start select[data-v-e054818b]{display:block;width:100%;min-height:42px;margin-top:8px;color:inherit;background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px}.interview-mode[data-v-e054818b]{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:16px;font-size:13px}.interview-question[data-v-e054818b]{padding:16px;margin-top:16px;border-radius:12px;background:color-mix(in srgb,#33adc5 9%,var(--color-bg))}footer[data-v-e054818b]{border-top:1px solid var(--color-border)}footer p[data-v-e054818b]{font-size:13px}footer[data-v-e054818b] .assistant-composer{margin:8px 0}.interview-body[data-v-e054818b] .interview-fact,.interview-body[data-v-e054818b] .interview-profile article{padding:16px;border:1px solid var(--color-border);border-radius:12px;margin:12px 0}.interview-body[data-v-e054818b] .interview-fact input{display:block;width:100%;min-height:42px;border:1px solid var(--color-border);border-radius:8px;padding:8px;background:var(--color-bg);color:inherit}.interview-body[data-v-e054818b] .interview-fact button,.interview-body[data-v-e054818b] .interview-profile button{margin:8px 8px 0 0}.interview-body[data-v-e054818b] .interview-profile article{display:flex;justify-content:space-between;gap:16px}.interview-body[data-v-e054818b] .interview-profile p{overflow-wrap:anywhere}@media(max-width:600px){header[data-v-e054818b],nav[data-v-e054818b],footer[data-v-e054818b]{padding:12px}.interview-body[data-v-e054818b]{padding:0 12px 12px}.interview-body[data-v-e054818b] .interview-profile article{display:block}h2[data-v-e054818b]{font-size:20px}footer small[data-v-e054818b]{font-size:11px}}.agent-controls[data-v-3f3b33c4]{padding:8px 16px;background:var(--color-bg-soft, #f5fafc);font-size:13px;line-height:1.7;color:var(--color-text, #244557)}summary[data-v-3f3b33c4]{cursor:pointer}.agent-controls[open][data-v-3f3b33c4]{max-height:190px;overflow-y:auto;flex-shrink:0}label[data-v-3f3b33c4]{display:flex;align-items:center;gap:8px;margin:8px 0}select[data-v-3f3b33c4]{max-width:100%;padding:8px;border:1px solid #c9dfe8;border-radius:8px;background:#fff}p[data-v-3f3b33c4]{margin:8px 0;max-width:70ch}a[data-v-3f3b33c4]{color:var(--color-primary, #227c99)}body.assistant-route{min-width:0;overflow:hidden}body.assistant-route .assistant-shell{height:min(var(--assistant-viewport-height, 100dvh),100dvh);min-height:0;padding:10px 12px}body.assistant-route .desktop-app .assistant-shell{padding-top:50px}body.assistant-route .app-frame{display:grid;grid-template-rows:70px minmax(0,1fr);height:100%;min-height:0;min-width:0}body.assistant-route .app-frame:has(.offline-banner){grid-template-rows:70px auto minmax(0,1fr)}body.assistant-route .app-header{height:70px;min-width:0;padding:0 24px;border-radius:24px 24px 0 0}body.assistant-route .main-content{padding:0;margin:0;max-width:none;min-height:0;min-width:0;overflow:hidden}body.assistant-route .side-inner{height:100%;min-height:0;top:0}body.assistant-route .side-navigation{height:100%;min-height:0}.assistant-nav-backdrop{position:fixed;inset:0;background:#19384c33;border:0;z-index:150}.assistant-v2{--a-bg: var(--color-bg, #fff);--a-soft: var(--color-bg-soft, #f5f9fb);--a-text: var(--color-text, #17394b);--a-muted: #587082;--a-line: var(--color-border, #e1edf1);--a-accent: #176f86;display:grid;grid-template-columns:248px minmax(0,1fr);height:100%;min-height:0;min-width:0;color:var(--a-text);background:var(--a-bg);border-top:1px solid var(--a-line)}.assistant-v2.history-collapsed,.assistant-v2.compact{grid-template-columns:minmax(0,1fr)}.assistant-v2 button,.assistant-history button,.assistant-plan-panel button,.assistant-privacy-dialog button,.assistant-rename-dialog button{border:0;background:transparent;color:inherit;font:inherit;cursor:pointer;border-radius:8px;min-height:36px}.assistant-v2 button:focus-visible,dialog button:focus-visible,.assistant-v2 a:focus-visible{outline:2px solid #23869c;outline-offset:2px}.assistant-v2 button:disabled{cursor:not-allowed;opacity:.5}.assistant-history{display:flex;flex-direction:column;min-height:0;min-width:0;padding:24px 16px 16px;background:var(--a-soft, #f5f9fb);border-right:1px solid var(--a-line, #e1edf1);color:var(--a-text, var(--color-text));font-size:14px;height:100%}.assistant-history header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;font-size:15px}.assistant-history .new-conversation{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px;background:var(--a-bg, var(--color-bg));border:1px solid var(--a-line, var(--color-border));margin-bottom:16px;min-height:44px;border-radius:12px}.session-search{display:flex;gap:4px;align-items:center;border:1px solid var(--a-line, var(--color-border));background:var(--a-bg, var(--color-bg));border-radius:10px;padding:2px 4px;margin-bottom:24px}.session-search input{width:0;min-width:0;flex:1;background:transparent;border:0;padding:10px 6px;color:inherit;font-size:13px}.history-caption{font-size:12px;color:var(--a-muted, #587082);margin:0 8px 8px}.history-scroll{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain}.history-empty{padding:8px;line-height:1.8;color:var(--a-muted, #587082);font-size:13px}.conversation-session{position:relative;padding:8px 8px 6px;border-radius:10px;margin-bottom:4px;display:grid;grid-template-columns:minmax(0,1fr) 30px;align-items:center}.conversation-session.selected{background:#93d5dc33}.conversation-session .session-title{text-align:left;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-size:13px;min-height:28px}.conversation-session time{grid-column:1;font-size:12px;color:var(--a-muted, #587082)}.session-more{grid-column:2;grid-row:1/3}.session-menu{grid-column:1/3;padding:8px;border:1px solid var(--a-line, var(--color-border));background:var(--a-bg, var(--color-bg));border-radius:8px;display:grid}.session-menu button{text-align:left;padding:4px 8px;min-height:40px}.assistant-history footer{padding-top:16px;border-top:1px solid var(--a-line, var(--color-border));display:grid;gap:4px}.assistant-history footer a,.assistant-history footer button{display:flex;align-items:center;gap:8px;padding:8px;text-align:left;min-height:40px;font-size:13px}.assistant-chat-column{display:flex;flex-direction:column;min-height:0;min-width:0;position:relative}.assessment-context-banner,.assessment-context-notice{flex:none;margin:8px 16px;padding:12px;background:var(--color-bg-soft);border:1px solid var(--color-border);border-radius:12px;color:var(--color-text);font-size:13px;line-height:1.6;max-height:170px;overflow:auto;overflow-wrap:anywhere}.assessment-context-banner p{margin:4px 0}.assessment-context-banner button{min-height:44px;margin-right:12px}.assessment-context-notice{margin:4px 16px}.assistant-chat-header{display:flex;gap:12px;align-items:center;flex:none;padding:12px 24px;min-height:60px;border-bottom:1px solid var(--a-line)}.assistant-icon{display:inline-flex;gap:8px;align-items:center;justify-content:center;min-width:40px;font-size:13px!important;min-height:40px!important}.assistant-current{display:flex;align-items:center;gap:12px;min-width:0;flex:1}.assistant-current h2{font-size:15px;line-height:1.4;font-weight:600;margin:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.assistant-demo{font-size:12px;white-space:nowrap;color:#805717;background:#fff2dc;padding:4px 8px;border-radius:6px}.assistant-reading{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;padding:24px 32px}.assistant-reading.welcome{display:flex;flex-direction:column;justify-content:safe center}.assistant-welcome{max-width:720px;width:100%;margin:auto;text-align:center;padding:16px 0}.assistant-welcome h1{font-size:27px;line-height:1.4;margin:8px 0 12px;letter-spacing:0}.assistant-welcome>p{font-size:15px;color:var(--a-muted);margin-bottom:24px}.assistant-task-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:600px;margin:0 auto}.assistant-task-grid button{display:grid;grid-template-columns:24px minmax(0,1fr);gap:6px 10px;text-align:left;border:1px solid var(--a-line);border-radius:14px;padding:16px;background:var(--a-bg);min-height:78px}.assistant-task-grid button>svg{grid-row:1/3;color:var(--a-accent)}.assistant-task-grid strong{font-size:14px}.assistant-task-grid small{font-size:12px;color:var(--a-muted)}.assistant-task-grid button:hover:not(:disabled){background:var(--a-soft)}.assistant-transcript{max-width:800px;margin:0 auto}.conversation-message{padding:0;margin:0 0 32px;min-width:0;overflow-wrap:anywhere;font-size:15px;line-height:1.8}.message-role{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--a-muted);min-height:32px;margin-bottom:8px}.conversation-message.user{margin-left:14%}.user-text{white-space:pre-wrap;background:#93d5dc29;border-radius:16px;padding:14px 18px}.conversation-message.assistant{background:transparent}.assistant-markdown>:last-child{margin-bottom:0}.assistant-markdown p{margin:0 0 14px}.assistant-markdown h1,.assistant-markdown h2,.assistant-markdown h3{font-size:19px;margin:20px 0 12px}.assistant-markdown ul,.assistant-markdown ol{padding-left:24px}.assistant-markdown a{color:#176f86;text-decoration:underline;text-underline-offset:3px}.assistant-markdown blockquote{margin:12px 0;padding:8px 16px;border-left:3px solid #93d5dc;background:var(--a-soft)}.assistant-markdown table{border-collapse:collapse;display:block;overflow:auto;max-width:100%}.assistant-markdown td,.assistant-markdown th{border:1px solid var(--a-line);padding:6px 10px}.assistant-markdown :not(pre)>code{background:var(--a-soft);padding:2px 5px;border-radius:4px}.assistant-code{margin:16px 0;border:1px solid var(--a-line);border-radius:12px;overflow:hidden;min-width:0}.code-toolbar{padding:6px 12px;display:flex;justify-content:space-between;align-items:center;background:var(--a-soft);font-size:12px}.assistant-code pre{margin:0;padding:16px;overflow:auto;max-width:100%;background:var(--a-bg);font-size:13px;line-height:1.7}.message-actions{display:flex;gap:8px;margin-top:12px}.message-actions button{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;font-size:12px;color:var(--a-muted)}.message-actions button[aria-pressed=true]{color:var(--a-accent)}.message-incomplete,.message-placeholder{font-size:13px;color:var(--a-muted)}.assistant-input-dock{flex:none;max-width:864px;width:100%;margin:0 auto;padding:0 32px max(16px,env(safe-area-inset-bottom));background:var(--a-bg)}.conversation-composer{display:flex;align-items:flex-end;gap:12px;padding:12px 14px;border:1px solid #bed6df;border-radius:18px;background:var(--a-bg);box-shadow:0 4px 24px #355a6810}.conversation-composer:focus-within{border-color:#36889b;box-shadow:0 0 0 2px #93d5dc33}.conversation-composer textarea{display:block;flex:1;min-width:0;width:100%;resize:none;max-height:160px;min-height:48px;background:transparent;border:0;padding:6px 2px;font-size:15px;line-height:1.6;color:inherit;outline:none!important;box-shadow:none!important}.assistant-send{display:grid;place-items:center;background:var(--a-accent)!important;color:#fff!important;border-radius:12px!important;min-width:44px;min-height:44px!important;flex:none}.assistant-input-caption{display:flex;justify-content:space-between;align-items:center;gap:8px;color:var(--a-muted);font-size:12px;padding-top:8px}.assistant-input-caption button{min-height:28px;font-size:12px}.assistant-limit-note{font-size:12px;color:var(--a-muted);margin:4px 0 0;text-align:center;line-height:1.5}.assistant-live{font-size:12px;color:var(--a-muted);margin:0 0 4px;min-height:18px}.assistant-input-error,.assistant-error-banner{font-size:13px;line-height:1.6;background:#fff4e7;color:#7a441f;padding:8px 12px;border-radius:10px;margin:8px 0}.assistant-input-error button,.assistant-error-banner button{font-size:13px;text-decoration:underline}.assistant-error-banner{margin:8px 16px;flex:none}.new-replies{display:block;margin:0 auto 8px;background:var(--a-soft)!important;border:1px solid var(--a-line)!important;padding:4px 16px}.assistant-history-dialog,.assistant-privacy-dialog,.assistant-rename-dialog,.assistant-plan-panel{color:var(--color-text, #17394b);background:var(--color-bg, #fff);border:1px solid var(--color-border, #e1edf1);border-radius:20px;padding:24px;max-height:85dvh;overflow:auto;font-size:14px;line-height:1.8;box-shadow:0 16px 70px #17394b22}dialog::backdrop{background:#17394b33}.assistant-privacy-dialog{width:min(680px,calc(100vw - 32px))}.assistant-privacy-dialog>header,.assistant-plan-panel>header{display:flex;align-items:center;justify-content:space-between;gap:16px}.assistant-privacy-dialog h2,.assistant-rename-dialog h2{font-size:20px}.conversation-consents{display:grid;gap:16px;padding:16px 0}.conversation-consents label{display:flex;align-items:flex-start;gap:10px}.conversation-consents input{margin-top:6px;accent-color:#176f86;width:18px;height:18px;flex:none}.assistant-primary{background:#176f86!important;color:#fff!important;padding:8px 20px;border-radius:10px!important}.assistant-rename-dialog input{display:block;width:100%;padding:12px;border:1px solid var(--color-border);border-radius:8px;color:inherit;background:var(--color-bg)}.assistant-rename-dialog footer{display:flex;gap:12px;justify-content:flex-end;margin-top:16px}.assistant-history-dialog{margin:0;padding:0;width:min(300px,90vw);height:100dvh;max-height:100dvh;border-radius:0 20px 20px 0;overflow:hidden}.assistant-plan-panel{margin:0 0 0 auto;width:min(420px,100vw);height:100dvh;max-height:100dvh;border-radius:20px 0 0 20px}.assistant-plan-panel h2{font-size:20px}.assistant-plan-panel label{display:grid;gap:8px}.assistant-plan-panel select{width:100%;padding:10px;background:var(--color-bg);color:inherit;border:1px solid var(--color-border);border-radius:8px}.plan-note{font-size:12px;color:var(--color-text-secondary)}.plan-week{padding:16px 0;border-bottom:1px solid var(--color-border)}.plan-week h4{font-size:15px;margin:0 0 8px}.plan-week a{display:block;color:#176f86}.plan-link{display:inline-block;margin-top:20px;color:#176f86}.assistant-v2.compact{height:calc(100dvh - 80px);border:0}.compact .assistant-chat-header{padding:8px 0}.compact .assistant-reading{padding:16px 0}.compact .assistant-input-dock{padding:0 0 8px}.compact .assistant-welcome h1{font-size:21px}.compact .assistant-task-grid{gap:8px}.compact .assistant-task-grid button{padding:12px;min-height:70px}.compact .assistant-icon span{display:none}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(max-width:1100px){.assistant-v2{grid-template-columns:minmax(0,1fr)}.assistant-desktop-history,.assistant-route .header-search{display:none}.assistant-route .brand{min-width:160px}.assistant-route .app-header{gap:12px}.assistant-route .header-links{max-width:none;min-width:0}.assistant-route .header-links a{padding:8px 10px}}@media(max-width:767px){body.assistant-route .assistant-shell{padding:0}.assistant-route .app-frame{border-radius:0;grid-template-rows:60px minmax(0,1fr)}.assistant-route .app-frame:has(.offline-banner){grid-template-rows:60px auto minmax(0,1fr)}body.assistant-route .app-header{height:60px;padding:0 12px;gap:8px;border-radius:0}.assistant-route .header-links{display:none}.assistant-route .brand{min-width:0;flex:1}.assistant-route .brand img{max-width:138px}.assistant-route .header-actions{margin-left:auto;gap:8px}.assistant-route .bell-button{display:none}.assistant-route .assistant-mobile-nav{display:grid;place-items:center;width:40px;min-height:44px;border:0;background:transparent;color:var(--color-text)}.assistant-route .side-navigation{display:none}.assistant-route .side-navigation.assistant-nav-open{display:block;position:fixed;top:0;left:0;width:220px!important;z-index:151;height:100dvh}.assistant-route .side-navigation.assistant-nav-open .side-inner{min-height:0;border-radius:0;padding-top:20px}.assistant-route .side-navigation.assistant-nav-open .side-label{display:inline}.assistant-route .side-navigation.assistant-nav-open .side-link{justify-content:flex-start;padding-left:16px}.assistant-reading{padding:16px}.assistant-input-dock{padding:0 16px max(12px,env(safe-area-inset-bottom))}.assistant-chat-header{padding:8px 12px;gap:8px;min-height:52px}.assistant-icon span{display:none}.assistant-current h2{font-size:14px}.assistant-current{gap:6px}.assistant-demo{font-size:11px;padding:3px 5px}.assistant-welcome{padding:8px 0}.assistant-welcome h1{font-size:23px}.assistant-welcome>p{font-size:14px;margin-bottom:16px}.assistant-task-grid{gap:8px}.assistant-task-grid button{padding:12px;gap:4px 6px;min-height:76px}.assistant-task-grid strong{font-size:13px}.assistant-task-grid small{font-size:12px;line-height:1.4}.assistant-task-grid button>svg{width:18px}.assistant-input-caption>span{font-size:11px}.assistant-limit-note{font-size:11px}.assistant-privacy-dialog,.assistant-rename-dialog{padding:20px}.assistant-transcript{font-size:15px}.conversation-message.user{margin-left:8%}.assistant-history footer button,.assistant-history footer a,.assistant-history .session-title{min-height:44px}.assistant-history header button{min-height:44px;min-width:44px}.assistant-plan-panel{border-radius:0}.assistant-v2.compact .assistant-welcome h1{font-size:22px}}@media(max-height:650px){.assistant-welcome .assistant-avatar{width:88px!important;height:94px!important}.assistant-welcome>p{margin-bottom:12px}.assistant-task-grid button{min-height:60px;padding:8px}.assistant-welcome h1{font-size:22px}.assistant-limit-note{display:none}}[data-theme=dark] .assistant-v2{--a-muted: #adc3d1;--a-accent: #267c91}[data-theme=dark] .assistant-error-banner,[data-theme=dark] .assistant-input-error{background:#3f3024;color:#f0c99e}@media(prefers-reduced-motion:reduce){.assistant-v2 *,.assistant-history-dialog *{scroll-behavior:auto!important;transition:none!important}}.assistant-interview-entry{display:flex;align-items:center;gap:12px;padding:6px 24px;border-bottom:1px solid var(--color-border);flex:none;font-size:13px}.assistant-interview-entry button{min-height:36px;padding:6px 10px;border:1px solid var(--color-border);border-radius:8px;color:var(--color-text);background:var(--color-bg);cursor:pointer}.assistant-interview-entry small{color:var(--color-text-secondary);font-size:12px}@media(max-width:600px){.assistant-interview-entry{padding:4px 16px}.assistant-interview-entry small{display:none}}.jinglan-robot-launcher[data-v-c0853ae1]{position:fixed;right:26px;bottom:22px;z-index:40;display:grid;justify-items:center;padding:0;background:transparent;cursor:pointer;border:0;color:var(--color-text);font:inherit}.jinglan-robot-launcher img[data-v-c0853ae1]{object-fit:contain;transition:transform .2s}.jinglan-robot-launcher:hover img[data-v-c0853ae1]{transform:translateY(-5px) rotate(-3deg)}.jinglan-robot-launcher span[data-v-c0853ae1]{background:var(--color-bg);border:1px solid var(--color-border);padding:5px 12px;border-radius:20px;font-size:11px}.jinglan-robot-launcher.waiting img[data-v-c0853ae1]{animation:robot-breathe-c0853ae1 1.4s ease-in-out infinite}.jinglan-robot-launcher.idle img[data-v-c0853ae1]{animation:robot-breathe-c0853ae1 4s ease-in-out infinite}.robot-drawer>header button[data-v-c0853ae1]{border:0;background:transparent;color:var(--color-text)}.jinglan-robot-launcher.replying span[data-v-c0853ae1]{border-color:#3bbacb}.jinglan-robot-launcher.error span[data-v-c0853ae1]{border-color:#db6a6a}.robot-overlay[data-v-c0853ae1]{position:fixed;inset:0;background:#0d315624;z-index:130;display:flex;justify-content:flex-end}.robot-drawer[data-v-c0853ae1]{background:var(--color-bg);width:min(540px,100%);height:100%;overflow-y:auto;padding:16px}.robot-drawer>header[data-v-c0853ae1]{display:flex;justify-content:space-between;align-items:center;margin:4px 8px 14px;font-size:13px}.jinglan-robot-launcher[data-v-c0853ae1]:focus-visible,.robot-drawer button[data-v-c0853ae1]:focus-visible{outline:2px solid #3bbacb;outline-offset:3px}@keyframes robot-breathe-c0853ae1{50%{transform:translateY(-4px)}}@media(prefers-reduced-motion:reduce){.jinglan-robot-launcher img[data-v-c0853ae1]{animation:none!important;transition:none!important}}:root{--recommendation-note-size: 12px;--color-primary: #93d5dc;--color-primary-light: #c6e6e8;--color-bg: #fff;--color-bg-soft: #f4fbfc;--color-text: #0d3156;--color-text-secondary: #6f8ca5;--color-border: rgba(147, 213, 220, .25);--radius-sm: 12px;--radius-md: 20px;--radius-lg: 32px;--shadow-soft: 0 8px 30px rgba(50, 120, 150, .08);font-family:Segoe UI,Microsoft YaHei,Noto Sans SC,sans-serif;color:var(--color-text);background:#eaf8fb;font-synthesis:none}.offline-banner{margin:0 22px;padding:10px 15px;border-radius:12px;background:var(--color-bg-soft);font-size:12px;line-height:1.7;color:var(--color-text-secondary)}.sync-operation{padding:20px 0;border-bottom:1px solid var(--color-border);font-size:13px}.sync-conflict{margin:14px 0;padding:14px;border-radius:16px;background:var(--color-bg-soft)}.sync-versions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:10px 0}.sync-versions pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:220px;overflow:auto;font-size:12px}.generic-drawer:has(.sync-operation){width:min(820px,95vw)}.sync-indicator.offline,.sync-indicator.conflict{background:#edf8fa;color:#0d3156}.learning-evidence-panel{margin-top:24px}.evidence-skill-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}.evidence-skill-card{display:grid;gap:8px;padding:18px;border-radius:var(--radius-md);background:var(--color-bg-soft);font-size:12px}.evidence-skill-card span,.evidence-skill-card small{color:var(--color-text-secondary);line-height:1.7}.evidence-history{margin-top:20px}.evidence-history summary{cursor:pointer;padding:12px 0}.evidence-event{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid var(--color-border);font-size:12px}.evidence-event>div{flex:1;min-width:180px}.evidence-event small{display:block;margin-top:6px;color:var(--color-text-secondary)}.modal-card fieldset{border:0;padding:0;margin:0 0 16px;min-width:0}.sync-indicator{border:0;border-radius:999px;padding:5px 9px;color:#258b92;background:#e4f5f5;font-size:10px;white-space:nowrap}.recommendation-note{font-size:var(--recommendation-note-size);line-height:1.7;color:var(--color-text-secondary);margin:9px 0}.profile-cue{display:flex;align-items:center;gap:9px;padding:12px 16px;margin:12px 0;background:var(--color-bg-soft);border-radius:var(--radius-sm);font-size:13px;line-height:1.7}.competition-trust{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:12px 0;font-size:12px;line-height:1.7;color:var(--color-text-secondary)}.competition-trust a{text-decoration:underline}.score-breakdown{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0;font-size:12px}.score-breakdown span{padding:8px 12px;border-radius:12px;background:var(--color-bg-soft)}.sync-indicator.error{background:#fff0ed;color:#a35441}.community-layout,.focus-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:20px}.community-chat{min-height:480px}.team-messages{height:320px;overflow:auto;padding:20px 0}.team-messages article{padding:12px;border-radius:12px;background:var(--color-bg-soft);margin-bottom:10px}.team-messages p{margin:5px 0;white-space:pre-wrap}.button-column{display:grid;gap:6px;flex:none}.rooms-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:22px}.room-card{padding:24px;border-radius:20px;background:var(--color-bg-soft);display:grid;align-content:start;gap:12px}.room-card h2,.room-card h3,.room-card p{margin-bottom:0}.catalog-editor{width:100%;min-height:460px;resize:vertical;border:1px solid var(--color-border);padding:18px;border-radius:16px;font-family:Consolas,monospace;font-size:12px;background:var(--color-bg-soft);color:var(--color-text)}.focus-buttons{justify-content:center;margin:20px 0}.focus-buttons input{width:120px}.import-label{margin-top:18px;overflow:hidden;position:relative;cursor:pointer}.import-label input{position:absolute;opacity:0;inset:0;cursor:pointer}.full-field{grid-column:1/-1}.code-input{font-family:Consolas,monospace;white-space:pre}.word-card,.music-panel{display:grid;gap:18px;place-items:center;min-height:400px;align-content:center;text-align:center}.word-card h1,.music-panel h1{font-size:48px;margin:0}.music-panel label{display:flex;align-items:center;gap:15px;margin-top:16px}.pdf-layout{display:grid;grid-template-columns:270px 1fr;gap:20px}.pdf-viewer{height:700px;padding:0;overflow:hidden}.pdf-viewer iframe{width:100%;height:100%;border:0}.pdf-layout .form-field{margin-top:18px}.spaced-heading{margin-top:32px}.learning-metrics{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:18px 0}.learning-metrics>div{display:grid;gap:6px;padding:18px;text-align:center;border-radius:16px;background:var(--color-bg-soft)}.learning-metrics strong{font-size:26px;color:#3ba5b7}.profile-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.search-results h3{margin:10px 0 5px}.record-card p{white-space:pre-wrap;overflow-wrap:anywhere}[data-theme=dark]{--color-bg: #152f42;--color-bg-soft: #1b384b;--color-text: #dcf0f4;--color-text-secondary: #a5c4d6;--color-border: rgba(147, 213, 220, .2);background:#102737;color:var(--color-text)}[data-theme=dark] .app-shell{background:#102737}[data-theme=dark] .app-frame,[data-theme=dark] .app-header,[data-theme=dark] .panel,[data-theme=dark] .right-card,[data-theme=dark] .surface-card,[data-theme=dark] .competition-card,[data-theme=dark] .resource-card,[data-theme=dark] .modal-card,[data-theme=dark] .side-inner,[data-theme=dark] .avatar-menu{background:var(--color-bg);color:var(--color-text)}[data-theme=dark] .form-field input,[data-theme=dark] .form-field textarea,[data-theme=dark] .form-field select,[data-theme=dark] .filter-select{background:var(--color-bg-soft);color:var(--color-text)}.knowledge-toolbar{display:grid;gap:14px}.knowledge-search{min-height:46px;padding:0 16px;border-radius:16px;background:var(--color-bg-soft);display:flex;align-items:center;gap:10px;color:#3397ad}.knowledge-search input{width:100%;border:0;background:transparent;color:var(--color-text)}.knowledge-layout{display:grid;grid-template-columns:.82fr 1.18fr;gap:14px}.knowledge-list{display:grid;align-content:start;gap:8px}.knowledge-item{border:0;border-radius:16px;background:#f8fcfd;padding:14px;color:var(--color-text);display:flex;align-items:center;justify-content:space-between;text-align:left}.knowledge-item:hover,.knowledge-item.active{background:#e8f8fa;color:#167d97;transform:translateY(-1px)}.knowledge-item span{display:grid;gap:5px}.knowledge-item small{color:var(--color-text-secondary);font-size:11px}.knowledge-detail{min-height:470px}.knowledge-detail h2{margin:12px 0 8px}.knowledge-detail>p{line-height:1.8}.lead-copy{color:#34728f;font-weight:600}.soft-tag{display:inline-flex;padding:5px 10px;border-radius:999px;background:#eaf8fb;color:#298ca5;font-size:12px}.knowledge-section{margin-top:20px}.knowledge-section h3{display:flex;align-items:center;gap:7px;margin-bottom:10px}.tag-cloud{display:flex;flex-wrap:wrap;gap:8px}.relation-card{padding:12px 14px;border-radius:14px;background:#f4fbfc;display:flex;justify-content:space-between}.relation-card span{color:var(--color-text-secondary);font-size:12px}.relation-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}.relation-columns>div{display:grid;align-content:start;gap:8px}.text-link{color:#2b819e;font-size:13px}.text-link:hover{color:#0d607f;transform:translate(2px)}.knowledge-stats{margin-top:14px;display:grid;grid-template-columns:auto 1fr;gap:9px 12px;align-items:baseline}.knowledge-stats strong{font-size:22px;color:#2b96ac}.full-button{width:100%;justify-content:center}.assistant-workspace{padding:0;overflow:hidden}.assistant-head{padding:18px 20px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--color-border)}.assistant-head h2{margin:0 0 4px;display:flex;align-items:center;gap:8px}.assistant-head p{margin:0;font-size:12px}.assistant-messages{height:420px;overflow:auto;padding:22px;display:grid;align-content:start;gap:14px;background:linear-gradient(180deg,#fbfeff,#f4fbfc)}.assistant-message{display:flex;gap:10px;max-width:82%}.assistant-message.user{justify-self:end;flex-direction:row-reverse}.assistant-message>div{padding:13px 15px;border-radius:6px 18px 18px;background:#fff;box-shadow:0 5px 18px #3278960f}.assistant-message.user>div{border-radius:18px 6px 18px 18px;background:#dff4f7}.assistant-message p{margin:0;line-height:1.7;font-size:13px}.message-avatar{width:34px;height:34px;flex:none;border-radius:50%;display:grid;place-items:center;background:#d9f3f6;color:#238da6;font-size:12px}.message-feedback{margin-top:9px;display:flex;align-items:center;gap:6px;font-size:11px;color:var(--color-text-secondary)}.message-feedback button{width:28px;height:28px;border:0;border-radius:50%;background:#f1f8fa;color:#6f8ca5;display:grid;place-items:center}.message-feedback button.active{background:#bfeaf0;color:#137d96}.assistant-prompts{padding:14px 20px 0}.assistant-composer{padding:14px 20px 20px;display:flex;gap:10px;align-items:flex-end}.assistant-composer textarea{flex:1;resize:none;border:1px solid var(--color-border);border-radius:16px;padding:12px 14px;color:var(--color-text)}.flow-list{padding-left:22px;line-height:2.15;color:#4e7793}.aside-prompt{width:100%;text-align:left;border:0;border-radius:12px;background:#f4fbfc;padding:10px 12px;margin-top:8px;color:#2f6f8d}.form-error{margin:10px 20px 0;color:#b55252;font-size:12px}.assistant-full-link{position:fixed;z-index:42;right:28px;bottom:26px;padding:9px 14px;border-radius:999px;background:#fff;color:#218ba4;box-shadow:var(--shadow-soft);font-size:12px}.auth-page{min-height:100vh;min-width:1100px;padding:48px max(7vw,70px);display:grid;grid-template-columns:1.12fr .88fr;gap:70px;align-items:center;background:radial-gradient(circle at 20% 15%,rgba(147,213,220,.43),transparent 33%),linear-gradient(135deg,#e9f9fb,#fdfefe 52%,#e5f6f8);position:relative}.auth-back{position:absolute;top:28px;left:34px;display:flex;align-items:center;gap:6px;color:#397b98}.auth-visual{min-height:620px;border-radius:38px;padding:48px;display:flex;flex-direction:column;justify-content:space-between;color:#0d3156;background:linear-gradient(90deg,#fffffff0,#ffffff7a),url(/assets/coast-hero-CixtnaPr.png) center/cover;box-shadow:var(--shadow-soft)}.auth-brand{align-self:flex-start}.auth-brand strong{font-size:29px}.auth-visual h1{font-size:48px;line-height:1.25}.auth-visual>div>p:not(.eyebrow){max-width:560px;font-size:16px;line-height:1.8}.auth-points{display:flex;gap:10px;flex-wrap:wrap}.auth-points span{padding:9px 13px;border-radius:999px;background:#ffffffc7;color:#397892;font-size:12px}.auth-panel{display:grid;place-items:center}.auth-card{width:min(460px,100%);padding:38px;border-radius:30px;background:#ffffffe6;box-shadow:0 18px 60px #3278961f}.auth-icon{width:52px;height:52px;border-radius:18px;display:grid;place-items:center;background:#dff5f7;color:#1b91a9}.auth-card h2{margin:18px 0 8px;font-size:28px}.auth-card form{margin-top:24px;display:grid;gap:16px}.auth-card label,.settings-form label{display:grid;gap:7px;color:#3d6e88;font-size:12px;font-weight:600}.auth-card input,.settings-form input{height:46px;border:1px solid var(--color-border);border-radius:14px;padding:0 14px;background:#fbfeff;color:var(--color-text)}.auth-card .form-error{margin:0}.text-button,.menu-button{width:100%;border:0;background:transparent;color:#278aa2;padding:13px}.demo-account{margin-top:8px;padding:12px 14px;border-radius:13px;background:#f1f9fa;display:flex;justify-content:space-between;font-size:12px;color:#5f859c}.demo-account strong{color:#276d89}.integration-panel{min-height:510px}.section-heading h2{display:flex;align-items:center;gap:8px}.mode-options{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:20px 0}.mode-options label{min-height:140px;border:1px solid var(--color-border);border-radius:20px;padding:20px;display:grid;grid-template-columns:auto 1fr;gap:8px 10px;align-items:start;color:#4b7590;cursor:pointer}.mode-options label.active{border-color:#88d5de;background:#f0fafb;box-shadow:inset 0 0 0 1px #bce8ed}.mode-options label input{margin-top:4px}.mode-options label svg{color:#2d9eb4}.mode-options label strong,.mode-options label span{grid-column:2}.mode-options label span{font-size:12px;line-height:1.6}.settings-form{display:grid;gap:14px;margin:18px 0}.settings-form p{font-size:12px;line-height:1.7}.connection-result{margin-top:18px;padding:13px;border-radius:14px;background:#f0fafb;color:#397890;line-height:1.6}.not-found{min-height:68vh;display:grid;place-items:center;align-content:center;gap:12px;text-align:center;color:var(--color-text-secondary)}.not-found>span{font-size:72px;font-weight:700;color:#bee7eb;line-height:1}.not-found h1{margin:0;color:var(--color-text)}.not-found p{margin-bottom:8px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:1280px}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3{letter-spacing:.015em}h1{font-size:37px}h2{font-size:22px}h3{font-size:17px}small,.muted{color:var(--color-text-secondary)}svg{flex:none}button:disabled{opacity:.45;cursor:not-allowed}button,a,.competition-card,.resource-card,.surface-card{transition:all .25s ease}button:hover:not(:disabled){filter:brightness(.97)}input:focus,select:focus,textarea:focus{outline:2px solid #b7e5eb;outline-offset:1px}.app-shell{min-height:100vh;padding:10px 15px 12px;display:flex;gap:0;background:radial-gradient(circle at 4% 0%,#dff6fc,transparent 32%),linear-gradient(140deg,#e6f7fb,#f4fcfd 48%,#e7f7fb)}.side-navigation{width:154px;flex:none;position:relative;z-index:15;transition:width .3s ease}.side-inner{position:sticky;top:10px;height:calc(100vh - 22px);min-height:770px;border-radius:32px 0 0 32px;padding:15px 11px 25px;background:#f6fcfec7;display:flex;flex-direction:column;align-items:center}.window-dots{display:flex;gap:6px;align-self:flex-start;margin:5px 0 33px 12px}.window-dots i{height:9px;width:9px;border-radius:50%;background:#f46e74}.window-dots i:nth-child(2){background:#f7c35a}.window-dots i:nth-child(3){background:#68c883}.side-inner nav{width:100%;display:grid;gap:10px}.side-link{height:55px;border-radius:30px;display:flex;align-items:center;gap:12px;padding:5px 8px;color:#5c84a2;font-weight:600;white-space:nowrap}.side-icon{height:44px;width:44px;flex:none;display:grid;place-items:center;border-radius:50%;background:#fff;color:#2c9bb8;box-shadow:0 2px 9px #2e80a00a}.side-link:hover,.side-link.router-link-exact-active{background:#e1f6fb;color:#187f9f}.side-link.router-link-exact-active .side-icon{background:#c9f2f7;color:#0f8dab}.side-label{font-size:14px}.side-bottom{margin-top:auto;align-self:flex-start;padding-left:16px;color:#3b7f9e;font-family:Georgia,serif;font-style:italic;line-height:1.25}.side-bottom span{font-size:17px}.side-bottom small{display:block;margin-top:22px;font-family:DM Sans,sans-serif;font-size:10px;font-style:normal}.app-frame{min-width:0;flex:1;background:#ffffffc2;border-radius:32px;box-shadow:0 10px 45px #3987a112;min-height:calc(100vh - 22px);overflow:hidden}.app-header{height:78px;display:flex;align-items:center;gap:26px;padding:0 31px;background:#ffffffd6;border-radius:32px 32px 24px 24px;position:sticky;top:0;z-index:10;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.brand{display:flex;align-items:center;gap:10px;min-width:200px}.brand-icon{color:#168ca9;transform:rotate(-16deg)}.brand strong{font-family:Georgia,serif;font-size:27px;font-weight:500;display:block;line-height:1}.brand small{font-size:10px;letter-spacing:.03em}.header-links{display:flex;align-items:center;gap:7px;padding:6px;border-radius:40px;background:#f6fbfd;flex:1;justify-content:center;max-width:470px;margin:auto}.header-links a{display:flex;align-items:center;gap:6px;padding:8px 17px;border-radius:25px;font-size:13px;color:#5f82a0}.header-links a:hover,.header-links .router-link-active{background:#fff;box-shadow:var(--shadow-soft);color:#0e6485}.header-actions{margin-left:auto;display:flex;align-items:center;gap:19px}.header-search{height:42px;width:290px;display:flex;align-items:center;gap:10px;border:1px solid #dbeff5;background:#f9fdff;border-radius:25px;padding:0 14px;color:#5285a3}.header-search input{background:transparent;border:0;outline:0;min-width:0;width:100%;font-size:12px;color:var(--color-text)}.icon-button{border:0;background:transparent;color:#306b91;width:34px;height:34px;display:inline-grid;place-items:center;border-radius:50%;padding:0}.icon-button:hover{background:#e9f7fa}.bell-button{position:relative}.notification-dot{position:absolute;right:-3px;top:-3px;min-width:16px;height:16px;border-radius:12px;color:#fff;background:#4fb7c7;font-size:10px;display:grid;place-items:center}.avatar-wrap{position:relative}.avatar-button{display:flex;align-items:center;gap:6px;background:transparent;border:0;color:#54738c}.avatar-button>span{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#e0f3f7;color:#137d9c;font-size:18px;font-weight:700;border:3px solid white;box-shadow:0 2px 8px #bfe4ed}.avatar-menu{position:absolute;right:0;top:48px;width:145px;padding:8px;background:#fff;border:1px solid var(--color-border);border-radius:16px;box-shadow:var(--shadow-soft);display:grid}.avatar-menu a{padding:10px 12px;border-radius:9px;font-size:13px}.avatar-menu a:hover{background:#eef8fb}.main-content{padding:0 22px 28px;max-width:1800px;margin:auto}.page-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px}.page-main,.page-aside{min-width:0;display:grid;align-content:start;gap:16px}.page-aside{gap:16px}.surface-card,.panel,.right-card{background:#fffffff0;border:1px solid rgba(218,239,245,.72);border-radius:22px;box-shadow:0 4px 24px #3788a20b}.panel,.right-card{padding:19px}.panel:hover,.surface-card:hover{box-shadow:var(--shadow-soft)}.section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;gap:12px}.section-heading h2{font-size:18px;margin:0}.section-heading h2 small{font-weight:400;margin-left:8px;font-size:11px}.section-heading a,.section-heading button{border:0;background:transparent;color:#688ba6;font-size:12px;display:flex;align-items:center;gap:4px}.section-heading a:hover,.section-heading button:hover{color:#238fab}.page-hero{min-height:190px;border-radius:23px;position:relative;overflow:hidden;background-image:linear-gradient(90deg,#f5fcffe6,#f6fcff4d 72%),url(/assets/coast-hero-CixtnaPr.png);background-size:cover;background-position:center 52%;padding:30px 36px;margin-bottom:16px}.page-hero.compact{min-height:150px}.page-hero-content{position:relative;z-index:1}.page-hero .eyebrow{letter-spacing:.19em;color:#459abb;font-size:11px;font-weight:700;margin:0 0 10px}.page-hero h1{font-family:Georgia,Noto Sans SC,serif;font-size:34px;letter-spacing:.08em;margin:0 0 8px;color:#0d3156}.page-hero p:not(.eyebrow){font-size:15px;color:#416e8c;margin:0}.hero-scribble{position:absolute;right:8%;top:21%;font-family:Georgia,serif;font-style:italic;font-size:29px;color:#4aa8c6;opacity:.85;transform:rotate(-12deg);line-height:.9}.home-hero{min-height:300px;padding:27px 38px}.home-hero h1{font-size:35px;line-height:1.38;margin:12px 0 6px}.home-hero .search-bar{max-width:650px;margin-top:21px}.hero-hot{display:flex;align-items:center;gap:7px;margin-top:12px;font-size:12px}.hero-hot span{color:#3a7392}.hero-hot button{background:#ffffffc7;border:0;border-radius:14px;padding:5px 12px;color:#315a79;font-size:11px}.search-bar{height:45px;display:flex;align-items:center;gap:10px;padding:4px 5px 4px 15px;border:1px solid #e3f0f5;border-radius:26px;background:#fff;color:#3c7495;box-shadow:0 5px 16px #4687a60f}.search-bar.large{height:52px}.search-bar input{border:0;outline:0;background:transparent;flex:1;min-width:0;font-size:13px;color:#143959}.search-bar button{height:36px;width:36px;display:grid;place-items:center;background:#5eb8c8;border:0;border-radius:50%;color:#fff}.search-bar.large button{height:42px;width:42px}.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.quick-card{display:flex;align-items:center;gap:12px;padding:11px 13px;border-radius:19px;background:#fff;border:1px solid #e6f2f6;box-shadow:0 4px 18px #e6f4f844;min-width:0}.quick-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-soft)}.quick-card .quick-icon{height:43px;width:43px;border-radius:50%;display:grid;place-items:center;background:#e5f7fa;color:#2899b5;flex:none}.quick-card strong,.quick-card small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.quick-card strong{font-size:13px}.quick-card small{font-size:10px;margin-top:2px}.quick-card>svg:last-child{margin-left:auto;color:#76a1b8}.tag{display:inline-flex;align-items:center;justify-content:center;border-radius:10px;background:#eaf6fa;color:#417493;padding:4px 9px;font-size:11px;font-weight:500;white-space:nowrap}.tag-primary{background:#67c0cd;color:#fff}.tag-soft{background:#eff8fb;color:#5e88a2}.tag-warm{background:#f3f1e4;color:#a98947}.tags{display:flex;gap:5px;flex-wrap:wrap}.card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.competition-card{border-radius:18px;border:1px solid #e3f0f5;background:#fff;min-width:0;position:relative;overflow:hidden;padding:13px}.competition-card:hover,.resource-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-soft)}.competition-art{height:64px;margin:-13px -13px 10px;background-image:linear-gradient(90deg,#e8f8fc99,#eefbff44),url(/assets/coast-hero-CixtnaPr.png);background-size:cover;background-position:center;opacity:.92}.cover-mountain .competition-art{background-position:65% 35%}.cover-coast .competition-art{background-position:75% 65%}.cover-lake .competition-art{background-position:25% 70%}.cover-architecture .competition-art{background-position:95% 55%}.competition-card-top{position:absolute;top:9px;left:11px;right:11px;display:flex;align-items:center;justify-content:space-between}.heart-button{width:30px;height:30px;display:grid;place-items:center;border:0;border-radius:50%;background:#fff;color:#47769b}.heart-button.active{color:#49adc0}.competition-card h3{font-family:Georgia,Noto Sans SC,serif;font-size:19px;margin:0 0 3px}.competition-name{font-size:12px;color:#5a7d99;margin:0 0 8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.competition-card .tags{min-height:24px}.card-meta{display:grid;gap:4px;margin:11px 0;font-size:11px;color:#62829c}.card-meta span{display:flex;align-items:center;gap:5px}.competition-actions{display:flex;gap:5px}.card-primary,.primary-button{border:0;background:#e5f6fa;color:#0c476c;border-radius:13px;height:32px;font-weight:600;font-size:12px;display:flex;align-items:center;justify-content:center;gap:7px;padding:0 15px}.card-primary{flex:1}.card-primary:hover,.primary-button:hover{background:#cceef4}.card-mini{width:32px;height:32px;border:0;border-radius:11px;background:#f2f9fb;color:#6c9ab4;display:grid;place-items:center}.card-mini.selected{color:#168fa9;background:#d9f2f7}.primary-button{height:40px;font-size:13px;background:#63bccb;color:#fff;padding:0 18px}.primary-button:hover{background:#47aaba}.secondary-button{height:40px;border:1px solid #d7ecf2;background:#fff;border-radius:13px;color:#3c7493;font-size:13px;padding:0 15px;display:inline-flex;align-items:center;justify-content:center;gap:7px}.button-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.text-action{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;color:#318aaa;font-size:12px;padding:7px}.form-field{display:grid;gap:7px;color:#3e6682;font-size:12px;font-weight:600}.form-field input,.form-field select,.form-field textarea,.filter-select{width:100%;height:40px;border:1px solid #dceef3;border-radius:12px;padding:0 12px;color:#173e5c;background:#fff;font-size:13px}.form-field textarea{height:90px;padding:11px;resize:vertical}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.filter-toolbar{display:flex;align-items:center;gap:9px;margin-bottom:14px;flex-wrap:wrap}.filter-toolbar .search-bar{flex:1;min-width:260px}.filter-select{width:auto;min-width:115px}.segmented{display:inline-flex;gap:3px;padding:4px;border-radius:19px;background:#f0f9fb}.segmented button{border:0;border-radius:15px;background:transparent;padding:7px 14px;font-size:12px;color:#62829c;white-space:nowrap}.segmented button.active{background:#63bdcb;color:#fff;box-shadow:0 3px 12px #a3dbe4}.filter-panel{padding:17px;border:1px solid #e3f0f4;border-radius:18px;background:#fff;margin-bottom:15px}.filter-group{display:flex;align-items:flex-start;gap:16px;margin-bottom:12px;font-size:12px}.filter-group>strong{min-width:52px;padding-top:5px}.filter-group>div{display:flex;flex-wrap:wrap;gap:6px}.filter-group button{border:0;background:#f3f9fb;color:#587c99;border-radius:16px;padding:5px 12px;font-size:12px}.filter-group button.active{background:#cbeef3;color:#127d9a}.empty-state{min-height:200px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:#79a8bd}.empty-state strong{color:#275777}.empty-state span{font-size:12px}.loading-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.skeleton-card{height:240px;border:1px solid #edf4f6;border-radius:18px;padding:20px;background:#fff}.skeleton-line{height:13px;margin:15px 0;border-radius:8px;background:linear-gradient(90deg,#e9f5f8,#f6fbfd,#e9f5f8);background-size:200% 100%;animation:shimmer 1.5s infinite}.skeleton-line.short{width:40%}.skeleton-line.medium{width:70%}@keyframes shimmer{to{background-position-x:-200%}}.right-card h3,.panel h3{font-size:16px;margin:0}.right-card .section-heading{margin-bottom:13px}.quote-card{min-height:132px;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(145deg,#fff,#f7fcff);position:relative;overflow:hidden}.quote-card:after{content:"“";font-family:Georgia,serif;position:absolute;right:14px;bottom:-54px;color:#d9f1f6;font-size:170px;line-height:1}.quote-card p{font-family:Georgia,Noto Sans SC,serif;font-size:17px;line-height:1.65;margin:4px 0 0}.quote-card small{font-size:11px}.task-item{display:flex;align-items:center;gap:10px;padding:8px 5px;border-bottom:1px solid #e8f2f6;min-height:42px}.task-item:last-child{border:0}.task-check{width:19px;height:19px;flex:none;border:1.5px solid #8bbbd0;border-radius:5px;background:#fff;color:#fff;display:grid;place-items:center;padding:0;font-size:13px}.task-check.checked{background:#55b4c5;border-color:#55b4c5}.task-text{min-width:0;flex:1}.task-text strong{display:block;font-size:12px;font-weight:600;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.task-text strong.done{text-decoration:line-through;color:#86a0b0}.task-text small{font-size:10px}.task-time{display:flex;align-items:center;gap:3px;white-space:nowrap;color:#84a1b8;font-size:11px}.icon-button.mini{width:24px;height:24px}.timeline{display:flex;overflow-x:auto;gap:0;padding:8px 0 1px}.timeline-event{min-width:124px;flex:1;position:relative;border-top:2px solid #d9ecf3;padding:14px 9px 0;font-size:11px}.timeline-event:hover{color:#128ba9}.timeline-dot{position:absolute;top:-6px;left:9px;height:10px;width:10px;border-radius:50%;background:#6fc2d0;border:2px solid #fff}.timeline-event time,.timeline-event strong,.timeline-event small{display:block}.timeline-event strong{margin-top:3px}.timeline-event small{font-size:10px}.progress-row{display:flex;align-items:center;gap:10px;font-size:11px;font-weight:700;color:#257d9c}.progress-track{height:8px;border-radius:8px;background:#e5f1f7;overflow:hidden;flex:1}.progress-track>div{height:100%;border-radius:8px;background:linear-gradient(90deg,#74ced7,#50b1c5)}.skill-progress{margin-bottom:15px}.skill-progress>div:first-child{display:flex;justify-content:space-between;margin-bottom:7px;font-size:12px}.skill-progress span{color:#4488a5}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.stat-card{display:flex;align-items:center;gap:12px;padding:13px;border-radius:16px;border:1px solid #e6f1f6;background:#fff}.stat-icon{height:42px;width:42px;border-radius:50%;background:#e7f8fb;color:#42a9bf;display:grid;place-items:center}.stat-card strong{display:block;font-size:22px;line-height:1.1}.stat-card strong small{font-size:11px;margin-left:2px}.stat-card span:last-child{font-size:11px;color:#7996a9}.radar-chart{width:100%;height:315px}.calendar-widget header{display:flex;justify-content:space-between;align-items:center;margin-bottom:13px}.calendar-widget header div{display:flex;gap:2px}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.week-label{text-align:center;font-size:11px;color:#86a1b3;padding:8px 0}.calendar-day{border:0;background:#f7fbfd;border-radius:11px;min-height:58px;text-align:left;padding:8px;color:#326380}.calendar-day:hover{background:#e9f7fa}.calendar-day.blank{background:transparent}.calendar-day.today{background:#c7eef4;color:#0d7193}.calendar-day.has{box-shadow:inset 0 0 0 1px #c6e7ee}.calendar-day strong{font-size:12px}.event-dots{display:block;font-size:9px;color:#1e96ae;margin-top:4px}.overlay,.modal-overlay{position:fixed;inset:0;background:#0d31562e;z-index:30;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.notification-panel,.ai-drawer,.generic-drawer{position:fixed;z-index:31;right:0;top:0;bottom:0;width:min(410px,95vw);background:#fff;box-shadow:-10px 0 40px #6d9db033;padding:25px;overflow-y:auto}.panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.panel-head h3{display:flex;align-items:center;gap:9px;font-size:20px;margin:0}.count-pill{background:#e5f8fb;color:#2697af;border-radius:10px;padding:3px 7px;font-size:11px}.notification-item{display:flex;gap:6px;border-bottom:1px solid #eaf3f6;padding:14px 0}.notification-item.unread{background:#f5fbfd}.notification-body{border:0;background:none;text-align:left;flex:1;display:grid;gap:4px;color:#153b60}.notification-body small{font-size:10px}.notification-body strong{font-size:13px}.notification-body span{font-size:11px;color:#7290a6;line-height:1.5}.empty-mini{padding:20px;text-align:center;color:#8caabd}.ai-fab{position:fixed;right:25px;bottom:25px;z-index:20;width:54px;height:54px;border:2px solid #fff;border-radius:50%;background:#61bfce;color:#fff;display:grid;place-items:center;box-shadow:0 7px 20px #67becd66}.ai-drawer{display:flex;flex-direction:column}.chat-list{flex:1;overflow:auto;display:flex;flex-direction:column;gap:12px;padding:20px 0}.chat-bubble{padding:13px;border-radius:15px;font-size:13px;line-height:1.65;max-width:88%}.chat-bubble.assistant{align-self:flex-start;background:#f0f9fb}.chat-bubble.user{align-self:flex-end;background:#76c9d5;color:#fff}.prompt-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}.prompt-chips button{background:#f1f9fb;border:0;border-radius:12px;padding:7px;font-size:11px;color:#4c7f9c}.chat-form{display:flex;border:1px solid #d6edf2;border-radius:16px;overflow:hidden}.chat-form input{flex:1;border:0;padding:12px;outline:0;min-width:0}.chat-form button{border:0;background:#5bb8c8;color:#fff;padding:0 14px}.modal-overlay{z-index:40;display:grid;place-items:center;padding:20px}.modal-card{width:min(560px,95vw);max-height:85vh;overflow-y:auto;background:#fff;border-radius:24px;padding:24px;box-shadow:0 15px 50px #4f93aa44}.modal-card header{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.modal-card header h3{margin:0;font-size:19px}.toast-message{position:fixed;left:50%;bottom:25px;transform:translate(-50%);z-index:60;background:#153b60;color:#fff;border-radius:25px;padding:10px 20px;font-size:12px;box-shadow:var(--shadow-soft)}.fade-enter-active,.fade-leave-active,.drawer-enter-active,.drawer-leave-active,.toast-enter-active,.toast-leave-active{transition:all .25s ease}.fade-enter-from,.fade-leave-to{opacity:0}.drawer-enter-from,.drawer-leave-to{transform:translate(100%);opacity:.5}.toast-enter-from,.toast-leave-to{opacity:0;transform:translate(-50%,15px)}.resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.resource-card{background:#fff;border:1px solid #e5f1f5;border-radius:18px;overflow:hidden;display:flex;min-height:190px;min-width:0}.resource-cover{width:110px;flex:none;margin:10px;border-radius:12px;background:linear-gradient(160deg,#cceef5,#629dc2);display:flex;flex-direction:column;justify-content:space-between;padding:12px;color:#fff}.resource-cover span{font-size:10px;opacity:.9}.resource-cover strong{font-family:Georgia,Noto Sans SC,serif;font-size:19px;line-height:1.25;word-break:break-all}.resource-cover-book{background:linear-gradient(155deg,#dfecf1 10%,#174d6f 10%,#153d62 70%,#378eb1)}.resource-cover-book-blue{background:linear-gradient(155deg,#9ad4e2,#216298 60%,#123f68)}.resource-cover-code{background:linear-gradient(160deg,#d8f2f5,#64b2c4)}.resource-cover-tool{background:linear-gradient(160deg,#e8f5fc,#438aca)}.resource-cover-course{background:linear-gradient(160deg,#b9d6f4,#375eb9)}.resource-cover-landscape{background-image:linear-gradient(160deg,#91bfd0aa,#2e7093aa),url(/assets/coast-hero-CixtnaPr.png);background-size:cover;background-position:center}.resource-info{padding:12px 11px 12px 0;min-width:0;flex:1;display:flex;flex-direction:column}.resource-title-row{display:flex;justify-content:space-between;gap:3px}.resource-title-row h3{font-size:14px;margin:1px 0 8px;line-height:1.4}.resource-card .tags{gap:4px}.resource-card .tag{font-size:10px;padding:3px 6px}.resource-author{font-size:11px;color:#7190a7;margin:8px 0 5px}.resource-description{font-size:11px;color:#587b96;line-height:1.55;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.resource-footer{margin-top:auto;display:flex;align-items:center;gap:8px;color:#7495ab;font-size:10px;padding-top:8px}.resource-footer span,.resource-footer button{display:flex;align-items:center;gap:3px}.resource-footer button{border:0;background:none;color:#2e8cab;font-size:10px;margin-left:auto;padding:0}.resource-footer button.resource-add{margin-left:0}.resource-card.list{min-height:150px}.resource-card.list .resource-cover{width:135px}.list-view{display:grid;grid-template-columns:1fr!important}.competition-card.list{display:flex;gap:15px;align-items:center;min-height:130px}.competition-card.list .competition-art{width:160px;height:110px;flex:none;margin:0;border-radius:12px}.competition-card.list .competition-card-top{left:27px;right:auto;top:20px;width:140px}.competition-card.list .competition-card-body{flex:1;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:5px 12px}.competition-card.list .competition-name,.competition-card.list .tags{grid-column:1}.competition-card.list .card-meta{grid-column:2;grid-row:1/4;margin:0}.competition-card.list .competition-actions{grid-column:2}.pill-tabs{display:flex;align-items:center;gap:3px;padding:5px;background:#f3fafc;border-radius:18px;overflow:auto}.pill-tabs button{border:0;background:transparent;border-radius:14px;padding:9px 16px;font-size:12px;font-weight:600;color:#527b99;white-space:nowrap}.pill-tabs button.active{background:#66bfcd;color:#fff}.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:17px}.detail-section{padding:22px;margin-bottom:16px}.detail-section h2{font-size:18px;margin-bottom:12px}.detail-section p{font-size:13px;color:#557792;line-height:1.8;margin-bottom:0}.detail-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.fact{padding:13px;background:#f5fbfd;border-radius:12px}.fact span{display:block;font-size:11px;color:#7d9aac}.fact strong{display:block;font-size:13px;margin-top:4px}.gap-list{display:grid;gap:8px}.gap-item{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:#f5fbfd;border-radius:11px;font-size:12px}.gap-item.need span:last-child{color:#bf9160}.gap-item.ok span:last-child{color:#37a5a4}.wizard-steps{display:flex;gap:0;margin:14px 0 20px}.wizard-step{flex:1;display:flex;align-items:center;gap:8px;font-size:12px;color:#88a0b3}.wizard-step:not(:last-child):after{content:"";height:1px;flex:1;background:#dbeef3;margin:0 8px}.wizard-step b{height:25px;width:25px;border-radius:50%;display:grid;place-items:center;background:#eaf6f9;color:#5693aa}.wizard-step.active b,.wizard-step.done b{background:#67bfce;color:#fff}.choice-grid{display:flex;flex-wrap:wrap;gap:9px}.choice-button{border:1px solid #dceef3;border-radius:14px;padding:10px 16px;background:#fff;color:#527b99;font-size:13px}.choice-button.active{border-color:#67c2ce;background:#e3f7fa;color:#127d99}.match-result{border:1px solid #e1f0f4;border-radius:17px;padding:16px;background:#fff;margin-bottom:12px}.match-result h3{font-size:17px;margin:0 0 4px}.match-grade{display:inline-block;background:#dff5ee;color:#2b9a81;border-radius:12px;padding:3px 10px;font-size:11px}.explain-list{display:grid;gap:5px;margin:12px 0;font-size:12px;color:#537c96}.explain-list span:first-letter{color:#43b2bc}.compare-wrap{overflow:auto}.compare-table{display:grid;grid-template-columns:120px repeat(var(--columns),minmax(170px,1fr));min-width:max-content;border:1px solid #e5f0f4;border-radius:16px;overflow:hidden}.compare-table>div{padding:12px;border-bottom:1px solid #edf4f6;font-size:12px}.compare-table .compare-label{background:#f5fbfd;font-weight:700;color:#356989}.compare-table .compare-heading{font-weight:700;background:#f5fbfd}.graph-canvas{height:470px;position:relative;overflow:hidden;border-radius:20px;background:radial-gradient(circle,#d9f2f7 1px,transparent 1px) 0 0/25px 25px,#f9fdfe;cursor:grab}.graph-canvas:active{cursor:grabbing}.graph-stage{position:absolute;left:50%;top:50%;transform-origin:center}.graph-node{position:absolute;transform:translate(-50%,-50%);padding:9px 15px;border:1px solid #c8e9ef;background:#fff;border-radius:20px;box-shadow:0 4px 15px #a2cfdd44;font-size:12px;color:#2c7293;white-space:nowrap;cursor:pointer}.graph-node:hover,.graph-node.active{background:#69c0cd;color:#fff}.graph-line{position:absolute;height:1px;background:#a6d9e3;transform-origin:left center}.graph-controls{position:absolute;right:15px;top:15px;display:grid;gap:5px}.graph-controls button{border:0;border-radius:9px;background:#fff;padding:7px;color:#4885a0}.graph-side{padding:18px}.question-row{display:flex;align-items:center;gap:14px;padding:14px;border-bottom:1px solid #eaf3f6}.question-row:last-child{border:0}.question-row>div:first-child{min-width:0;flex:1}.question-row strong{font-size:13px}.question-row small{display:block;font-size:11px;margin-top:3px}.question-row .button-row{margin-left:auto}.inline-list{display:grid;gap:8px}.inline-list a,.inline-list button{padding:11px 13px;border:0;border-radius:11px;background:#f4fafc;color:#3f7290;text-align:left;font-size:12px}.inline-list a:hover,.inline-list button:hover{background:#e2f4f8}.tool-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.tool-card{border:1px solid #e4f0f4;background:#fff;border-radius:16px;padding:15px;min-height:93px;display:flex;align-items:center;gap:12px;text-align:left}.tool-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-soft)}.tool-icon{width:43px;height:43px;border-radius:50%;background:#e6f7fa;color:#36a2b8;display:grid;place-items:center;flex:none}.tool-card strong{display:block;font-size:13px}.tool-card small{display:block;font-size:10px;margin-top:4px}.profile-banner{height:165px}.profile-card{margin-top:-56px;position:relative;padding:20px;display:flex;align-items:center;gap:20px}.profile-avatar{height:88px;width:88px;border-radius:50%;display:grid;place-items:center;background:#d8f2f6;color:#1689a6;font-size:34px;border:4px solid #fff}.profile-card h2{margin:0 0 5px}.profile-card p{margin:3px 0;color:#6c8ca6;font-size:12px}.profile-card .secondary-button{margin-left:auto}.activity-list{display:grid;gap:0}.activity-item{display:flex;gap:13px;padding:11px 0;border-bottom:1px solid #eaf3f6;font-size:12px}.activity-item time{color:#7f9bae;min-width:84px}.activity-item strong{font-weight:500}.streak-days{display:flex;justify-content:space-between;gap:5px}.streak-days span{height:28px;width:28px;border-radius:50%;background:#eaf5f8;display:grid;place-items:center;font-size:11px;color:#6993a9}.streak-days span.active{background:#62bfcc;color:#fff}@media(max-width:1450px){.side-navigation{width:70px}.side-inner{padding-left:6px;padding-right:6px}.side-label,.side-bottom small{display:none}.side-link{padding:5px;justify-content:center}.side-bottom{padding-left:2px}.side-bottom span{font-size:13px}.brand{min-width:205px}.header-links{display:none}.page-grid{grid-template-columns:minmax(0,1fr) 260px}.card-grid,.resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1451px){.side-navigation:hover{width:190px}.side-navigation:hover .side-inner{align-items:stretch}.side-navigation:hover .side-link{padding-left:12px}}@media(max-width:1280px){body{min-width:1024px}.app-header{gap:12px}.header-search{width:240px}.main-content{padding:0 15px 20px}.page-grid{grid-template-columns:minmax(0,1fr) 240px}.quick-card small{display:none}.tool-grid{grid-template-columns:repeat(3,1fr)}}.next-event{display:flex;align-items:center;gap:14px;padding:6px;background:#f6fbfd;border-radius:13px;font-size:12px}.next-event p{margin:7px 0 5px}.next-event small{font-size:11px}.date-tile{width:72px;height:75px;flex:none;display:grid;place-content:center;text-align:center;border-radius:12px;background:#e7f7fb}.date-tile strong{font-size:25px;line-height:1}.date-tile small{font-size:11px;margin-top:4px}.plan-list{display:grid;gap:8px}.plan-row{display:flex;align-items:center;gap:12px;padding:10px;border:1px solid #e5f1f5;border-radius:13px;margin-bottom:8px}.plan-emblem{height:45px;width:45px;flex:none;display:grid;place-items:center;background:#e9f7fb;color:#45a8bf;border-radius:11px}.plan-row>div:nth-child(2){min-width:120px;flex:1}.plan-row>div:nth-child(2) strong,.plan-row>div:nth-child(2) small{display:block}.plan-row>div:nth-child(2) strong{font-size:13px}.plan-row>div:nth-child(2) small{font-size:10px;margin-top:4px}.plan-progress{display:flex;align-items:center;gap:8px;width:35%;font-size:11px;color:#3894ae}.two-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:15px}.countdown{text-align:center;padding:9px 0 3px}.countdown strong{font-size:50px;font-family:Georgia,serif;line-height:1;color:#164566}.countdown span{margin-left:5px;font-weight:700;color:#268fa8}.countdown small{display:block;margin-top:13px}.learning-layout{display:grid;grid-template-columns:215px minmax(0,1fr);gap:14px;margin-bottom:14px}.goal-option{width:100%;border:0;border-bottom:1px solid #edf4f6;background:#fff;padding:10px 4px;display:flex;align-items:center;gap:9px;text-align:left;color:#2f6382}.goal-option.active{background:#ecf9fb;border-radius:11px}.goal-option>span:nth-child(2){flex:1}.goal-option strong,.goal-option small{display:block}.goal-option strong{font-size:12px}.goal-option small{font-size:10px;margin-top:3px}.goal-icon{height:30px;width:30px;border-radius:50%;background:#e4f5f9;color:#48a5bb;display:grid;place-items:center}.path-flow{display:flex;align-items:stretch;justify-content:space-between;gap:11px;min-height:300px;padding:36px 0 15px;overflow:auto}.path-stage{position:relative;min-width:125px;max-width:155px;flex:1;align-self:center;border:1px solid #e2f0f4;border-radius:16px;background:#fff;padding:27px 10px 13px;text-align:left;box-shadow:0 5px 15px #75b3c111;color:#184969}.path-stage:nth-child(2n){margin-top:45px}.path-stage:not(:last-child):after{content:"→";position:absolute;right:-15px;top:45%;color:#7dbccc;font-size:19px}.path-stage.locked{opacity:.6}.path-stage:hover{transform:translateY(-2px)}.path-number{position:absolute;top:-15px;left:calc(50% - 15px);height:30px;width:30px;border-radius:50%;background:#71c3d0;color:#fff;display:grid;place-items:center;font-size:12px}.path-stage.locked .path-number{background:#bdd3dd}.path-stage strong,.path-stage small,.path-status{display:block}.path-stage strong{font-size:13px}.path-stage small{font-size:10px;line-height:1.5;min-height:45px;margin-top:7px}.path-status{display:flex;align-items:center;gap:3px;font-size:10px;color:#4fa7b6;margin:8px 0}.study-plan{padding:15px;border:1px solid #e3f0f4;border-radius:14px;margin-bottom:14px}.study-plan h3{font-size:15px;margin-bottom:3px}.weeks-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.week-card{border-radius:11px;background:#f3fafc;padding:10px;display:grid;gap:3px}.week-card strong{font-size:11px;color:#2a93ad}.week-card p{font-size:12px;margin:2px 0}.week-card small{font-size:10px}.calendar-aggregate{display:grid;gap:20px}.aggregate-block{border-top:1px solid #e8f2f5;padding-top:12px}.aggregate-block h3{font-size:15px}.aggregate-event{display:flex;align-items:center;gap:14px;padding:11px;border:0;border-bottom:1px solid #edf4f6;background:#fff;width:100%;text-align:left;color:#466e8b;font-size:12px}.aggregate-event strong{flex:1}.record-card{display:flex;justify-content:space-between;gap:15px;padding:15px;border:1px solid #e6f1f5;border-radius:14px;margin:10px 0}.record-card strong,.record-card small{display:block}.record-card strong{font-size:14px}.record-card small{margin-top:5px;font-size:11px}.record-card p{font-size:12px;color:#60809a;margin:9px 0 0}.honor-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.honor-card{border:1px solid #e3f0f4;border-radius:15px;padding:20px;min-height:145px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:9px;background:#f8fcfd;color:#49aabd;text-align:center}.honor-card strong{color:#0d3156;font-size:13px}.honor-card span{font-size:11px;color:#7894a8}.goal-row,.goal-mini{display:flex;align-items:center;gap:9px;padding:10px;border-bottom:1px solid #edf4f6;font-size:12px}.goal-row>div{flex:1}.goal-row strong,.goal-row small{display:block}.goal-row small{font-size:10px;margin-top:4px}.goal-mini span{flex:1}.timer-display{text-align:center;font-family:Georgia,serif;color:#178fab;font-size:65px;letter-spacing:.1em;margin:14px 0 24px}@media(max-width:1450px){.weeks-grid{grid-template-columns:repeat(3,1fr)}.path-flow{gap:8px}.path-stage{min-width:105px}.two-cols{grid-template-columns:1fr}}.side-navigation{width:70px}.side-inner{padding-left:6px;padding-right:6px}.side-link{padding:5px;justify-content:center}.side-label{opacity:0;width:0;overflow:hidden;transition:opacity .3s ease}.side-bottom small{display:none}.side-bottom{padding-left:2px}.side-bottom span{font-size:13px}.side-navigation:hover{width:190px}.side-navigation:hover .side-link{justify-content:flex-start;padding-left:12px}.side-navigation:hover .side-label{opacity:1;width:auto}.side-navigation:hover .side-bottom small{display:block}.side-navigation:hover .side-bottom span{font-size:17px}.honor-image{max-width:100%;height:70px;object-fit:contain;border-radius:8px}.project-image{width:90px;height:65px;object-fit:cover;float:left;margin-right:12px;border-radius:9px}.desktop-titlebar{-webkit-app-region:drag;position:fixed;inset:0 0 auto;z-index:100;height:42px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;color:#315f7d;background:#f4fbfcf5;border-bottom:1px solid rgba(147,213,220,.25);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);-webkit-user-select:none;user-select:none}.desktop-titlebar-brand{height:100%;display:flex;align-items:center;gap:8px;padding-left:16px;color:#168ca9}.desktop-titlebar-brand strong{color:#0d3156;font-size:13px}.desktop-titlebar-brand .jinglan-logo{padding:0;border:0;width:24px}.auth-brand .jinglan-logo{width:230px}.desktop-titlebar-brand span{padding-left:10px;border-left:1px solid #d6ebf0;color:#7290a6;font-size:11px}.desktop-titlebar-drag{justify-self:center;display:flex;align-items:center;gap:7px;font-size:10px;color:#8aa5b7}.desktop-status-dot{width:7px;height:7px;border-radius:50%;background:#67c89a;box-shadow:0 0 0 4px #67c89a1f}.desktop-window-controls{-webkit-app-region:no-drag;height:100%;display:flex}.desktop-window-controls button{width:48px;height:100%;display:grid;place-items:center;padding:0;border:0;border-radius:0;color:#436f8b;background:transparent}.desktop-window-controls button:hover{background:#dff2f6}.desktop-window-controls .desktop-close:hover{color:#fff;background:#e26770}.desktop-app .app-shell{min-height:100vh;padding-top:50px}.desktop-app .side-inner{top:50px;height:calc(100vh - 62px);min-height:670px}.desktop-app .app-header{top:0}body{min-width:0!important}.auth-page{min-width:0}@media(min-width:1024px)and (max-width:1199px){.auth-page{padding:70px 40px;gap:30px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.auth-visual,.auth-panel{min-width:0}}.assistant-mobile-nav{display:none}@media(max-width:1023px){.app-shell{width:100%;padding:8px}.app-frame,.main-content{min-width:0;width:100%}.app-header{padding:12px;gap:8px;flex-wrap:wrap;height:auto;min-height:68px}.app-header .brand{min-width:0;width:140px}.header-links{display:none}.header-actions{min-width:0;flex:1;justify-content:flex-end}.header-search{display:none}.assistant-mobile-nav{display:grid;place-items:center;flex:none;width:44px;height:44px}.side-navigation{display:none}.side-navigation.assistant-nav-open{display:block;position:fixed;inset:0 auto 0 0;width:220px;z-index:90;background:#f4fbfd}.side-inner{min-height:0;height:100dvh;overflow-y:auto}.assistant-nav-backdrop{position:fixed;inset:0;z-index:80;background:#123b5766;border:0}.page-grid{grid-template-columns:minmax(0,1fr)}.main-content>*,.main-content section,.main-content article{min-width:0;max-width:100%}.surface-card,.right-card,.panel,.comparison-table,.calendar-grid{overflow-x:auto}.auth-page{min-width:0;padding:80px 24px 24px;gap:24px;grid-template-columns:minmax(0,1fr)}.auth-visual{display:none}.auth-panel,.auth-card{min-width:0;width:100%}.desktop-titlebar-drag,.desktop-titlebar-brand span{display:none}.desktop-titlebar{grid-template-columns:minmax(0,1fr) auto}}@media(max-width:600px){.main-content{padding:0 10px 20px}.app-frame{border-radius:18px}.page-hero h1,h1{font-size:26px}.page-hero{padding:24px 16px}.competition-grid,.resource-grid,.tool-grid,.stats-grid,.quick-grid{grid-template-columns:minmax(0,1fr)}.filter-bar,.page-actions,.form-row{flex-wrap:wrap}.modal-card{width:calc(100vw - 24px);max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);overflow:auto}.main-content p,.main-content h2,.main-content h3{overflow-wrap:anywhere}}
