/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.hidden{display:none}.table{display:table}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--ink:#17283d;--muted:#718298;--line:#e1ebf5;--canvas:#f4f8fd;--card:#fff;--green:#1687ed;--green-dark:#075da9;--mint:#deefff;--amber:#f3e5bf;--blue:#dce9f6;--danger:#a84938;--orange:#d7852f;--purple:#76518d;--sky:#3978a8;--coral:#d7654f;--shadow:0 18px 42px #2761971a}*{box-sizing:border-box}html{color:var(--ink);background:#dfeaf5;font-family:PingFang SC,Microsoft YaHei,system-ui,sans-serif}body{min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{color:inherit;-webkit-tap-highlight-color:transparent}button,select{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #3978a838}.app-shell{background:radial-gradient(circle at 8% 23%, #dce9f694, transparent 15rem), radial-gradient(circle at 90% -4%, #a6d5c18a, transparent 24rem), var(--canvas);width:min(100%,560px);min-height:100vh;margin:0 auto;padding:0 18px 104px;position:relative}.loading-screen{background:var(--canvas);min-height:100vh;color:var(--muted);place-content:center;justify-items:center;display:grid}.brand-mark{color:#fff;background:var(--green);width:58px;height:58px;box-shadow:var(--shadow);border-radius:18px;place-items:center;font-size:24px;font-weight:800;display:grid}.topbar{justify-content:space-between;align-items:center;gap:16px;min-height:112px;padding-top:24px;display:flex}.eyebrow,.section-kicker,.hero-kicker{letter-spacing:.08em;color:var(--muted);font-size:11px;font-weight:700}.topbar h1{letter-spacing:-.04em;margin:7px 0 0;font-size:25px}.avatar-button{background:#fff;border:0;border-radius:16px;width:48px;height:48px;padding:3px;transition:transform .18s,box-shadow .18s,background .18s;position:relative;box-shadow:0 10px 24px #1141322b}.avatar-button:hover{background:#fff;box-shadow:0 13px 28px #11413240}.avatar-button:active{transform:scale(.96)}.avatar-face{color:#fff;white-space:nowrap;background:linear-gradient(145deg,#157255,#0d4e3b);border:2px solid #fffc;border-radius:13px;place-items:center;width:100%;height:100%;font-size:10px;font-weight:850;display:grid}.profile-avatar{overflow:hidden}.profile-avatar img{object-fit:cover;width:100%;height:100%;display:block}.avatar-teacher .avatar-face,.large-avatar.avatar-teacher,.message-profile.avatar-teacher .large-avatar{background:linear-gradient(145deg,#3978a8,#275a80)}.avatar-member .avatar-face,.large-avatar.avatar-member,.message-profile.avatar-member .large-avatar{background:linear-gradient(145deg,#8b63a0,#69437e)}.notification-dot{color:#fff;border:2px solid var(--canvas);background:#d7654f;border-radius:10px;place-items:center;min-width:19px;height:19px;padding:0 5px;font-size:10px;display:grid;position:absolute;top:-6px;right:-6px}.page-stack{gap:16px;animation:.32s cubic-bezier(.2,.8,.2,1) page-enter;display:grid}.hero-panel{color:#fff;background:radial-gradient(circle at 92% 10%,#ffffff21 0 62px,#0000 63px),linear-gradient(145deg,#0d4d3a,#147257);border-radius:25px;flex-direction:column;justify-content:space-between;gap:22px;min-height:222px;padding:24px;display:flex;position:relative;overflow:hidden;box-shadow:0 22px 50px #0e4c3a33}.hero-panel:after{content:"";opacity:.07;pointer-events:none;background:linear-gradient(#fff,#fff) 0 2px/100% 2px no-repeat,linear-gradient(#fff,#fff) 0 12px/100% 2px no-repeat,repeating-linear-gradient(90deg,#0000 0 14px,#fff 14px 18px,#0000 18px 32px);height:16px;position:absolute;bottom:54px;left:0;right:0}.hero-panel>*{z-index:1;position:relative}.hero-panel h2{letter-spacing:-.04em;max-width:390px;margin:10px 0 8px;font-size:25px;line-height:1.24}.hero-panel p{color:#cee3da;margin:0;font-size:13px;line-height:1.7}.hero-actions{justify-content:space-between;align-items:end;gap:18px;display:flex}.rail-route{grid-template-columns:repeat(3,1fr);align-items:center;row-gap:6px;width:min(210px,48%);display:grid;position:relative}.rail-route:before{content:"";background:#ffffff6b;height:2px;position:absolute;top:5px;left:11%;right:11%}.rail-route span{z-index:1;background:#147257;border:2px solid #ffffffb8;border-radius:50%;justify-self:center;width:11px;height:11px;box-shadow:0 0 0 3px #ffffff14}.rail-route b{color:#ffffffb8;text-align:center;white-space:nowrap;font-size:8px;font-weight:650}.primary-button,.outline-button{cursor:pointer;border:0;border-radius:14px;min-height:48px;padding:0 18px;font-weight:750;transition:transform .16s,box-shadow .2s,background .2s,border-color .2s}.primary-button{color:#fff;background:linear-gradient(135deg,#116149,#16795b);box-shadow:0 9px 20px #1161492e}.primary-button.light{width:fit-content;color:var(--green-dark);background:#fff}.primary-button.full,.outline-button.full{width:100%}.primary-button.small{min-height:42px;margin-top:10px}.outline-button{color:var(--green);background:#fff;border:1px solid #cbd7d1}.primary-button:active,.outline-button:active{transform:scale(.98)}.metric-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.metric-card{background:var(--card);text-align:left;border:1px solid #dce5e0d1;border-radius:20px;align-content:space-between;gap:8px;min-height:132px;padding:16px 14px;transition:transform .2s,box-shadow .2s,border-color .2s;display:grid;position:relative;overflow:hidden;box-shadow:0 12px 30px #1c3d310f}.metric-card:after{content:"";opacity:.09;background:currentColor;border-radius:50%;width:54px;height:54px;position:absolute;top:-25px;right:-23px}.metric-card:hover{transform:translateY(-3px);box-shadow:0 17px 34px #1c3d311c}.metric-card:active{transform:translateY(0)scale(.98)}.metric-card strong{letter-spacing:-.04em;font-size:28px;line-height:1}.metric-card small{color:#66746f;font-size:10px}.metric-icon{white-space:nowrap;border-radius:8px;place-items:center;width:fit-content;min-width:47px;height:25px;padding:0 8px;font-size:9px;font-weight:800;display:grid}.metric-icon.mint{background:var(--mint);color:var(--green)}.metric-icon.amber{background:var(--amber);color:#85641c}.metric-icon.blue{background:var(--blue);color:#355f86}.section-card{background:var(--card);border:1px solid #dce5e0bd;border-radius:21px;padding:19px;transition:box-shadow .22s,border-color .22s;box-shadow:0 14px 38px #203f340f}.section-card.flush{padding:4px 16px}.section-heading{justify-content:space-between;align-items:end;gap:12px;margin-bottom:12px;display:flex}.section-heading h3{margin:5px 0 0;font-size:17px}.text-button{color:var(--green);background:0 0;border:0;padding:6px 0;font-size:12px;font-weight:700}.notice-list,.lead-preview-list{display:grid}.notice-row,.lead-row{border:0;border-bottom:1px solid var(--line);text-align:left;background:0 0;align-items:center;width:100%;transition:background .18s,transform .16s,padding .18s;display:flex}.notice-row:last-child,.lead-row:last-child{border-bottom:0}.notice-row{gap:10px;padding:12px 0}.notice-row:not(.urgent):hover{background:#f6faf8}.notice-row:active,.lead-row:active{transform:scale(.99)}.notice-row>span:nth-child(2){flex:1;gap:4px;min-width:0;display:grid}.notice-row strong{font-size:13px}.notice-row small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.notice-row time{color:#9ba6a1;font-size:10px}.notice-bullet{background:#d7654f;border-radius:50%;width:8px;height:8px}.notice-row.urgent{background:#fff4f0;border:1px solid #edc1b8;border-radius:14px;margin:5px 0;padding:13px 11px}.notice-row.urgent .notice-bullet{width:10px;height:10px;box-shadow:0 0 0 5px #d7654f21}.notice-row.urgent strong{color:#8f3f31}.notice-row.urgent small{color:#8b635b}.urgent-label{color:#fff;vertical-align:1px;background:#d7654f;border-radius:6px;margin-left:7px;padding:3px 6px;font-size:8px;font-style:normal;display:inline-flex}.notice-row.team-update{padding-block:11px}.team-avatar{width:38px;height:38px;color:var(--green);background:#e8efeb;border:0;border-radius:12px;flex:none;place-items:center;padding:3px;display:grid}.team-avatar .profile-avatar{color:#fff;white-space:nowrap;background:linear-gradient(145deg,#558b78,#24644f);border-radius:9px;place-items:center;width:100%;height:100%;font-size:8px;font-weight:800;display:grid}.notice-row.team-update:nth-child(4n+1) .team-avatar{color:#126249;background:#e3f1eb}.notice-row.team-update:nth-child(4n+2) .team-avatar{color:#356e9b;background:#e5eef9}.notice-row.team-update:nth-child(4n+3) .team-avatar{color:#76518d;background:#f0e7f5}.notice-row.team-update:nth-child(4n+4) .team-avatar{color:#a36a25;background:#fff0df}.notice-row.team-update strong{color:var(--ink);font-weight:650}.team-update-main{text-align:left;background:0 0;border:0;flex:1;gap:4px;min-width:0;display:grid}.team-update-main small{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.lead-row{cursor:pointer;border-radius:13px;gap:11px;padding:15px 7px}.lead-row:hover{background:linear-gradient(90deg,#f3f9f6,#f8f6fb);padding-inline:10px}.source-badge{text-align:center;border:0;border-radius:13px;flex:none;place-items:center;gap:3px;width:54px;min-height:52px;padding:5px;font-size:9px;font-weight:800;line-height:1.15;display:grid}.source-badge .profile-avatar{color:#fff;white-space:nowrap;background:#116149b8;border-radius:8px;place-items:center;width:25px;height:25px;font-size:7px;display:grid}.source-badge.video .profile-avatar{background:#76518dc7}.source-badge small{text-overflow:ellipsis;white-space:nowrap;max-width:46px;font-size:8px;overflow:hidden}.source-badge.live{color:#156148;background:#dcefe7}.source-badge.video{color:#76518d;background:linear-gradient(145deg,#f0e6f6,#e8def1)}.lead-open{text-align:left;background:0 0;border:0;flex:1;align-items:center;min-width:0;display:flex}.lead-main{flex:1;gap:4px;min-width:0;display:grid}.lead-main>span{align-items:center;gap:7px;display:flex}.lead-main strong{font-size:14px}.lead-main small{color:var(--muted);font-size:11px}.lead-main em{color:#485752;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-style:normal;overflow:hidden}.row-arrow{color:#adb7b2;font-size:22px}.status-badge{border:1px solid #0000;border-radius:7px;padding:3px 7px;font-size:9px;font-weight:750;display:inline-flex}.status-badge.success{color:#196046;background:#d9f0e6}.status-badge.danger{color:#9b4638;background:#fbe6e1;border-color:#f2ccc4}.status-badge.warning{color:#8a681b;background:#fff0cc;border-color:#f3dda8}.status-badge.info{color:#356b94;background:#e4f0fa;border-color:#cfe1ef}.search-wrap{border:1px solid var(--line);background:#fff;border-radius:16px;align-items:center;gap:10px;min-height:50px;padding:0 15px;display:flex;box-shadow:0 8px 24px #203f340a}.search-wrap span{color:var(--green);font-size:23px;transform:rotate(-20deg)}.search-wrap input{background:0 0;border:0;outline:0;flex:1;min-width:0;font-size:13px}.filter-scroller{scrollbar-width:none;gap:8px;padding-bottom:3px;display:flex;overflow-x:auto}.filter-chip{border:1px solid var(--line);white-space:nowrap;background:#fff;border-radius:999px;padding:8px 12px;font-size:11px;transition:color .18s,background .18s,transform .15s,border-color .18s}.filter-chip:hover{background:#f3faf7;border-color:#8eb9aa}.filter-chip.active{color:#fff;border-color:var(--green);background:linear-gradient(135deg,#126149,#287f63);box-shadow:0 5px 13px #1161492e}.filter-chip:active{transform:scale(.96)}.list-summary{color:var(--muted);justify-content:space-between;padding:0 4px;font-size:11px;display:flex}.empty-state{text-align:center;color:var(--muted);padding:38px 12px;font-size:13px}.empty-state.compact{padding:18px 0}.form-intro{background:linear-gradient(135deg,#e3f1eb,#edf4fb);border-left:4px solid #3a86b7;border-radius:18px;padding:16px 18px}.form-intro span{color:var(--green);font-size:12px;font-weight:800}.form-intro p{color:var(--muted);margin:5px 0 0;font-size:12px;line-height:1.6}.lead-form{box-shadow:var(--shadow);background:linear-gradient(#fff,#fdfefe);border-top:4px solid #74b69b;border-radius:22px;gap:15px;padding:20px;display:grid}.field{gap:8px;display:grid}.field>span{font-size:12px;font-weight:700}.field i{color:#d95f4a;font-style:normal}.field small{color:var(--muted);margin-left:5px;font-weight:400}.field input,.field select,.field textarea,.detail-block textarea{width:100%;color:var(--ink);background:#fbfcfb;border:1px solid #dbe3de;border-radius:12px;outline:none;padding:13px;font-size:13px;transition:border-color .18s,box-shadow .18s,background .18s}.field input:focus,.field select:focus,.field textarea:focus,.detail-block textarea:focus{background:#fff;border-color:#4d94bd;box-shadow:0 0 0 4px #4d94bd1f}.field input[readonly]{color:var(--green);cursor:default;background:#eef5f1;font-weight:700}.two-column{grid-template-columns:1fr 1fr;gap:12px;display:grid}.duplicate-card{background:linear-gradient(145deg,#fff8e8,#fff2d8);border:1px solid #efd49e;border-radius:18px;padding:16px}.duplicate-card strong{color:#8b651d;font-size:13px}.duplicate-card p{margin:7px 0;font-size:12px;line-height:1.6}.duplicate-actions{grid-template-columns:1.35fr 1fr;gap:8px;margin-top:12px;display:grid}.duplicate-card .duplicate-actions button{color:#1176c9;background:#fff;border:1px solid #d6e7f4;border-radius:11px;min-height:39px;padding:0 10px;font-size:10px;font-weight:750}.duplicate-card .duplicate-actions .duplicate-primary{color:#fff;background:linear-gradient(135deg,#1687ed,#3ba5f6);border-color:#1d8dea}.duplicate-permission{color:#806d49;margin-top:10px;font-size:10px;line-height:1.55;display:block}.period-tabs{background:#e7ede9;border-radius:14px;grid-template-columns:repeat(3,1fr);padding:4px;display:grid}.period-tabs button{min-height:36px;color:var(--muted);background:0 0;border:0;border-radius:10px;font-size:12px;transition:background .18s,color .18s,transform .15s,box-shadow .18s}.period-tabs button:hover{color:var(--green)}.period-tabs button.active{color:var(--green);background:#fff;font-weight:800;box-shadow:0 5px 15px #2642381c}.period-tabs button:active{transform:scale(.97)}.custom-range,.analytics-filters{grid-template-columns:1fr 1fr;gap:9px;display:grid}.custom-range{background:#fff;border-radius:15px;padding:13px}.custom-range label{gap:6px;display:grid}.custom-range span{color:var(--muted);font-size:9px;font-weight:700}.custom-range input,.analytics-filters select{width:100%;min-width:0;color:var(--ink);background:#fff;border:1px solid #dbe3de;border-radius:11px;outline:0;padding:10px;font-size:11px}.analytics-filters select:focus,.custom-range input:focus{border-color:#5c9e88}.analytics-filters.single{grid-template-columns:1fr}.personal-scope-note{color:var(--green);text-align:center;background:#e7f1ec;border-radius:11px;margin-top:-7px;padding:10px 12px;font-size:10px;font-weight:700}.summary-banner{color:#fff;background:linear-gradient(125deg,#0d5942 0%,#168060 62%,#3978a8 135%);border-radius:22px;padding:22px;position:relative;overflow:hidden;box-shadow:0 16px 34px #1161492e}.summary-banner:after{content:"";background:#ffffff1a;border-radius:50%;width:150px;height:150px;position:absolute;top:-72px;right:-55px}.summary-banner span{color:#cbe3da;font-size:11px}.summary-banner strong{margin:7px 0;font-size:38px;display:block}.summary-banner p{color:#d7e7e1;margin:0;font-size:12px}.funnel{background:#fff;border-radius:20px;justify-content:space-between;align-items:stretch;gap:3px;padding:12px 8px;display:flex;box-shadow:0 10px 26px #203f340f}.funnel div{text-align:center;border-radius:12px;flex:1;gap:4px;padding:7px 2px;display:grid}.funnel div:first-of-type{color:#356e9b;background:#edf6fc}.funnel div:nth-of-type(2){color:#176149;background:#eef7f3}.funnel div:nth-of-type(3){color:#96691f;background:#fff5df}.funnel div:nth-of-type(4){color:#74508a;background:#f1eaf6}.funnel strong{font-size:17px}.funnel span{color:var(--muted);font-size:9px}.funnel i{background:#b9c6c0;width:8px;height:1px}.bar-chart{gap:14px;display:grid}.bar-chart>div{grid-template-columns:38px 1fr 24px;align-items:center;gap:10px;font-size:11px;display:grid}.bar-chart i{background:#edf1ee;border-radius:6px;height:9px;overflow:hidden}.bar-chart b{border-radius:inherit;background:linear-gradient(90deg,#2f8b6c,#8ecab5);height:100%;transition:width .55s cubic-bezier(.2,.8,.2,1);display:block}.bar-chart>div:nth-child(2) b{background:linear-gradient(90deg,#76518d,#c09bd2)}.performance-list{display:grid}.performance-list>div{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:12px 0;display:flex}.performance-list>div:last-child{border-bottom:0}.performance-list>div>span:nth-child(2){flex:1;gap:3px;font-size:13px;display:grid}.performance-list small{color:var(--muted);font-size:10px}.rank{width:26px;height:26px;color:var(--green);background:#e5f0eb;border-radius:8px;place-items:center;font-size:11px;font-weight:800;display:grid}.performance-detail-list{gap:12px;display:grid}.performance-detail{border:1px solid var(--line);background:linear-gradient(145deg,#fbfdfc,#f5f9fb);border-radius:16px;padding:14px;transition:transform .2s,border-color .2s,box-shadow .2s;position:relative;overflow:hidden}.performance-detail:before{content:"";background:#68ac91;width:4px;position:absolute;inset:0 auto 0 0}.performance-detail:nth-child(3n+2):before{background:#6f9fc4}.performance-detail:nth-child(3n+3):before{background:#a981bb}.performance-detail:hover{border-color:#cadbd4;transform:translateY(-2px);box-shadow:0 12px 26px #203f3414}.performance-person{grid-template-columns:auto 1fr auto;align-items:center;gap:10px;display:grid}.performance-person>button{width:42px;height:42px;color:var(--green);background:#dfeee7;border:0;border-radius:11px;place-items:center;padding:3px;font-size:10px;font-weight:800;display:grid}.performance-person>button .profile-avatar{color:#fff;white-space:nowrap;background:linear-gradient(145deg,#4f9278,#226249);border-radius:9px;place-items:center;width:100%;height:100%;font-size:9px;display:grid}.performance-person>div{gap:3px;display:grid}.performance-person>div b{font-size:13px}.performance-person>div small{color:var(--muted);font-size:9px}.performance-person>strong{color:var(--green);text-align:right;font-size:18px}.performance-person>strong small{color:var(--muted);font-size:8px;font-weight:500;display:block}.performance-stats{border-top:1px solid var(--line);grid-template-columns:repeat(4,1fr);margin-top:12px;padding-top:12px;display:grid}.performance-stats span{text-align:center;border-right:1px solid var(--line);gap:4px;display:grid}.performance-stats span:last-child{border-right:0}.performance-stats b{font-size:14px}.performance-stats small{color:var(--muted);font-size:8px}.performance-stats span:first-child b{color:var(--green)}.performance-stats span:nth-child(2) b{color:var(--orange)}.performance-stats span:nth-child(3) b{color:var(--sky)}.performance-stats span:nth-child(4) b{color:var(--purple)}.export-button{background:#eef5f1}.profile-card{color:#fff;background:linear-gradient(135deg,#143f33,#176148);border-radius:23px;align-items:center;gap:16px;padding:22px;display:flex}.large-avatar{white-space:nowrap;background:#ffffff26;border-radius:18px;place-items:center;width:58px;height:58px;font-size:11px;font-weight:800;display:grid}.profile-card h2{margin:0 0 5px;font-size:20px}.profile-card p{color:#cae1d8;margin:0;font-size:12px}.role-switcher{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.role-card{border:1px solid var(--line);background:#fafcfb;border-radius:14px;justify-items:center;gap:5px;padding:12px 7px;transition:transform .18s,background .18s,border-color .18s,box-shadow .18s;display:grid}.role-card>span{width:29px;height:29px;color:var(--green);background:#e5eee9;border-radius:10px;place-items:center;font-weight:800;display:grid}.role-card>.profile-avatar{white-space:nowrap;padding:2px;font-size:8px}.role-card b{font-size:11px}.role-card small{color:var(--muted);text-align:center;font-size:8px}.role-card:nth-child(2)>span{color:#356e9b;background:#e5eef8}.role-card:nth-child(3)>span{color:#76518d;background:#f0e7f5}.role-card:hover{transform:translateY(-2px);box-shadow:0 9px 18px #203f3412}.role-card.active{border-color:var(--green);background:#eef6f2;box-shadow:inset 0 0 0 1px #1161491f}.member-row{align-items:center;gap:10px;padding:11px 0;display:flex}.member-avatar{width:36px;height:36px;color:var(--green);white-space:nowrap;background:#e4ece8;border-radius:12px;place-items:center;font-size:8px;font-weight:800;display:grid}.member-row>span:nth-child(2){flex:1;gap:3px;display:grid}.member-row b{font-size:13px}.member-row small{color:var(--muted);font-size:10px}.member-row button{background:var(--green);color:#fff;border:0;border-radius:9px;padding:7px 12px;font-size:11px;font-weight:700}.member-row-actions{gap:7px;display:flex}.member-row-actions .text-danger{color:#be493f;background:#fff0ef}.handover-card>p{color:var(--muted);margin:2px 0 13px;font-size:12px;line-height:1.6}.handover-form{gap:10px;display:grid}.handover-form label{color:var(--ink);gap:6px;font-size:12px;font-weight:800;display:grid}.handover-form select{width:100%;min-height:44px;color:var(--ink);background:#fff;border:1px solid #cbd7d1;border-radius:12px;padding:0 12px}.handover-form .danger-button{margin-top:2px}.profile-form{gap:15px;display:grid}.avatar-upload{cursor:pointer;background:linear-gradient(135deg,#f4faf7,#f5f8fc);border:1px dashed #b7cdc3;border-radius:16px;align-items:center;gap:12px;padding:12px;display:flex}.profile-edit-avatar{color:#fff;white-space:nowrap;background:linear-gradient(145deg,#4f9278,#226249);border-radius:18px;flex:none;place-items:center;width:58px;height:58px;font-size:11px;font-weight:800;display:grid;box-shadow:0 8px 18px #1e5a4429}.avatar-upload>span:nth-child(2){gap:4px;display:grid}.avatar-upload b{font-size:12px}.avatar-upload small{color:var(--muted);font-size:9px}.avatar-upload input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.message-entry{justify-content:space-between;align-items:center;display:flex}.message-entry b{color:var(--coral);font-size:11px}.message-entry.notification-ready{background:linear-gradient(135deg,#f5fbff,#eaf7ff);border-color:#8bc8ef;box-shadow:0 10px 24px #1485d514}.message-entry:disabled,.message-controls button:disabled{cursor:wait;opacity:.68}.accordion-list{gap:10px;display:grid}.activity-accordion{border:1px solid var(--line);background:#fbfdfc;border-radius:16px;overflow:hidden}.accordion-trigger{text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;width:100%;min-height:58px;padding:11px 13px;display:flex}.accordion-trigger>span{gap:4px;display:grid}.accordion-trigger b{font-size:12px}.accordion-trigger small{color:var(--muted);font-size:9px}.accordion-trigger i{width:27px;height:27px;color:var(--green);background:#e6f1ec;border-radius:9px;place-items:center;font-size:18px;font-style:normal;transition:transform .2s;display:grid}.accordion-trigger i.expanded{transform:rotate(180deg)}.accordion-content{border-top:1px solid var(--line);padding:0 13px 6px;animation:.22s page-enter}.message-profile{color:#fff;background:linear-gradient(135deg,#ffffff14,#0000 45%),linear-gradient(125deg,#0d513d,#17775a);border-radius:24px;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;min-height:132px;padding:20px;display:grid;position:relative;overflow:hidden;box-shadow:0 18px 38px #1161492e}.message-profile:after{content:"";opacity:.12;background:linear-gradient(#fff,#fff) 0 1px/100% 2px no-repeat,linear-gradient(#fff,#fff) 0 8px/100% 2px no-repeat,repeating-linear-gradient(90deg,#0000 0 12px,#fff 12px 15px,#0000 15px 26px);height:11px;position:absolute;bottom:13px;left:0;right:0}.message-profile>*{z-index:1}.message-profile .large-avatar{white-space:nowrap;background:linear-gradient(145deg,#157255,#0d4e3b);border:3px solid #ffffffb8;width:54px;height:54px;font-size:10px;box-shadow:0 8px 20px #00000026}.message-profile>div{min-width:0}.message-profile>div>span{color:#bfe0d4;letter-spacing:.08em;font-size:9px;font-weight:700}.message-profile h2{margin:3px 0;font-size:21px}.message-profile p{color:#d1e7df;margin:0;font-size:10px}.message-controls{gap:6px;display:grid}.message-controls button{color:#fff;background:#ffffff1a;border:1px solid #ffffff47;border-radius:10px;padding:8px 9px;font-size:9px;font-weight:700}.message-controls button.active{color:#173f33;background:#d9f0e6;border-color:#d9f0e6}.message-count{color:#9a4839;background:#fbe5e0;border-radius:999px;padding:5px 8px;font-size:9px;font-weight:750}.message-row{align-items:center;gap:11px;padding:14px 2px}.message-row.unread:not(.urgent){background:linear-gradient(90deg,#f2f8fd,#0000)}.message-row.read{opacity:.7}.message-symbol{color:#3978a8;background:#e4f0fa;border-radius:10px;flex:none;place-items:center;width:30px;height:30px;font-size:14px;font-weight:850;display:grid}.message-row.urgent .message-symbol{color:#fff;background:var(--coral)}.message-row.read .message-symbol{color:var(--green);background:#e2f1ea}.message-row>span:nth-child(2) time{margin-top:2px;display:block}.message-action{color:var(--green);flex:none;font-size:10px;font-weight:750}.message-row.urgent .message-action{color:var(--danger)}.station-card{overflow:hidden}.station-timeline{display:grid;position:relative}.station-timeline:before{content:"";background:linear-gradient(#66ad90,#6e9fc5,#a981bb);width:2px;position:absolute;top:17px;bottom:17px;left:7px}.station-timeline button{text-align:left;background:0 0;border:0;grid-template-columns:16px 1fr auto;align-items:center;gap:10px;padding:10px 0;display:grid}.station-timeline button:hover span{transform:translate(2px)}.station-timeline i{z-index:1;background:#55a083;border:4px solid #fff;border-radius:50%;width:16px;height:16px;box-shadow:0 0 0 2px #bcded0}.station-timeline button:nth-child(3n+2) i{background:#5f91b7;box-shadow:0 0 0 2px #c7ddeb}.station-timeline button:nth-child(3n+3) i{background:#926ba5;box-shadow:0 0 0 2px #dfcfe7}.station-timeline span{gap:3px;min-width:0;transition:transform .18s;display:grid}.station-timeline b{font-size:11px}.station-timeline small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.station-timeline time{color:#98a39f;font-size:8px}.bottom-nav{z-index:20;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff0;border:1px solid #d8e1dccc;border-radius:23px;grid-template-columns:1fr 1fr 1.1fr 1fr 1fr;align-items:center;width:min(100% - 24px,536px);height:72px;padding:8px 16px;display:grid;position:fixed;bottom:12px;left:50%;transform:translate(-50%);box-shadow:0 18px 45px #18352b2b}.nav-button{color:#8b9792;background:0 0;border:0;justify-items:center;gap:3px;transition:color .18s,transform .16s;display:grid}.nav-button span{font-size:20px;line-height:1}.nav-button small{font-size:9px}.nav-button.active{color:var(--green);font-weight:750;transform:translateY(-2px)}.nav-button:active{transform:scale(.92)}.add-button{color:#fff;background:linear-gradient(145deg,#116149,#208165);border:0;border-radius:17px;justify-self:center;width:49px;height:49px;font-size:28px;transition:transform .18s,box-shadow .2s;box-shadow:0 10px 24px #11614947}.add-button:hover{transform:translateY(-3px)rotate(3deg);box-shadow:0 15px 28px #11614952}.add-button:active{transform:scale(.93)}.sheet-backdrop{z-index:50;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0819136b;justify-content:center;align-items:end;animation:.2s fade-in;display:flex;position:fixed;inset:0}.detail-sheet{background:var(--canvas);border-radius:28px 28px 0 0;width:min(100%,560px);max-height:92vh;padding:9px 20px 34px;animation:.3s cubic-bezier(.2,.8,.2,1) sheet-up;overflow-y:auto;box-shadow:0 -18px 60px #11231d40}.team-profile-sheet{background:radial-gradient(circle at 85% 12%, #709fc42e, transparent 9rem), var(--canvas);text-align:center;border-radius:28px 28px 0 0;width:min(100%,560px);padding:9px 24px 34px;animation:.3s cubic-bezier(.2,.8,.2,1) sheet-up;position:relative;box-shadow:0 -18px 60px #11231d40}.team-profile-sheet .close-button{position:absolute;top:18px;right:20px}.team-profile-avatar{color:#fff;white-space:nowrap;background:linear-gradient(145deg,#4f9278,#226249);border:4px solid #fff;border-radius:25px;place-items:center;width:82px;height:82px;margin:4px auto 12px;font-size:14px;font-weight:850;display:grid;box-shadow:0 13px 28px #1e5a4433}.team-profile-kicker{color:var(--green);letter-spacing:.12em;font-size:9px;font-weight:800}.team-profile-sheet h2{margin:5px 0 3px;font-size:24px}.team-profile-sheet>p{color:var(--muted);margin:0;font-size:10px}.team-account-grid{text-align:left;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px;display:grid}.team-account-grid>div{border:1px solid var(--line);background:#fff;border-radius:15px;padding:15px}.team-account-grid small{color:var(--muted);margin-bottom:6px;font-size:9px;display:block}.team-account-grid strong{overflow-wrap:anywhere;color:var(--ink);font-size:12px;display:block}.team-profile-note{color:#7a6b49;background:#f3f0e8;border-radius:11px;margin-top:12px;padding:10px;font-size:9px}.sheet-handle{background:#c9d2ce;border-radius:3px;width:42px;height:4px;margin:0 auto 18px}.detail-header{justify-content:space-between;align-items:start;gap:15px;display:flex}.detail-header h2{letter-spacing:-.04em;margin:6px 0 0;font-size:28px;line-height:1.2}.detail-header p{color:var(--muted);margin:0;font-size:12px}.close-button{background:#fff;border:0;border-radius:11px;width:34px;height:34px;font-size:22px}.contact-highlight{grid-template-columns:1fr 1fr;gap:9px;margin-top:17px;display:grid}.contact-highlight>div{background:linear-gradient(145deg,#f8fcfa,#e9f4ef);border:1px solid #cfe0d8;border-radius:15px;min-width:0;padding:14px}.contact-highlight>div:nth-child(2){background:linear-gradient(145deg,#fdfbfe,#f2eaf6);border-color:#dcd0e5}.contact-highlight>div:nth-child(2) small{color:var(--purple)}.contact-highlight small{color:var(--green);margin-bottom:7px;font-size:9px;font-weight:750;display:block}.contact-highlight strong{overflow-wrap:anywhere;color:#123d31;font-size:14px;line-height:1.35;display:block}.ownership-strip{background:#e5eee9;border-radius:13px;gap:8px;margin:17px 0 12px;padding:11px 13px;font-size:11px;display:flex}.ownership-strip b{color:var(--green)}.ownership-strip .delegated-note{color:var(--muted);font-weight:700}.ownership-strip time{color:var(--muted);margin-left:auto}.danger-button{color:#bd3e35;cursor:pointer;background:#fff5f4;border:1px solid #f4b7b1;border-radius:14px;width:100%;min-height:46px;margin-top:10px;font-weight:800}.danger-button:hover{background:#fee8e5;border-color:#e88e84}.detail-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.detail-grid>div,.detail-block{background:#fff;border-radius:17px;padding:16px}.detail-grid small{color:var(--muted);margin-bottom:7px;font-size:10px;display:block}.detail-grid strong{font-size:13px}.detail-block{margin-top:11px}.detail-block h3{margin:0 0 11px;font-size:14px}.detail-block p{color:#53615c;margin:0;font-size:12px;line-height:1.75}.detail-block-title{justify-content:space-between;display:flex}.detail-block-title button{color:var(--green);background:0 0;border:0;font-size:11px;font-weight:750}.permission-note{color:#7a6b49;background:#f3f0e8;border-radius:10px;margin-top:12px;padding:10px;font-size:10px;line-height:1.5}.status-grid{flex-wrap:wrap;gap:7px;display:flex}.status-grid button{border:1px solid var(--line);background:#fafcfb;border-radius:10px;padding:8px 10px;font-size:10px;transition:transform .15s,box-shadow .18s,border-color .18s}.status-grid button:hover{transform:translateY(-1px);box-shadow:0 5px 12px #203f3414}.status-grid button:first-child{color:#916919;background:#fff8e9}.status-grid button:nth-child(2){color:#356e9b;background:#eef6fc}.status-grid button:nth-child(3),.status-grid button:nth-child(4){color:#176149;background:#eef8f3}.status-grid button:last-child{color:#9b4638;background:#fff1ed}.status-grid button.active{border-color:currentColor;font-weight:800;box-shadow:inset 0 0 0 1px}.invalid-panel{background:#fff3ef;border-radius:13px;margin-top:13px;padding:13px}.invalid-panel strong{color:var(--danger);font-size:12px}.invalid-panel p{margin:4px 0 9px;font-size:10px}.invalid-panel>div{flex-wrap:wrap;gap:6px;display:flex}.invalid-panel button{color:#874538;background:#fff;border:1px solid #e8c7c0;border-radius:8px;padding:6px 8px;font-size:9px}.timeline{display:grid}.timeline-item{grid-template-columns:13px 1fr;gap:8px;padding-bottom:13px;display:grid}.timeline-item>span{background:#66a58f;border-radius:50%;width:7px;height:7px;margin-top:4px;box-shadow:0 0 0 4px #e7f2ed}.timeline-item b{font-size:11px}.timeline-item p{margin:3px 0;font-size:10px}.timeline-item time{color:#98a39f;font-size:9px}.toast{z-index:100;color:#fff;background:linear-gradient(135deg,#173a30,#176149);border-radius:12px;width:max-content;max-width:calc(100% - 40px);padding:11px 16px;font-size:12px;animation:.28s cubic-bezier(.2,.8,.2,1) toast-in;position:fixed;bottom:94px;left:50%;transform:translate(-50%);box-shadow:0 14px 34px #11352a47}.app-shell{background:radial-gradient(circle at 92% 2%,#6cb9ff52,#0000 19rem),radial-gradient(circle at 0 38%,#beabff21,#0000 17rem),linear-gradient(#f7fbff,#f1f6fc)}.eyebrow{color:#6685a2}.topbar h1{color:#10263e;font-weight:760}.brand-mark,.avatar-face,.profile-edit-avatar,.team-profile-avatar{background:linear-gradient(145deg,#2999f5,#1676d4);box-shadow:0 10px 25px #167eda38}.avatar-button{box-shadow:0 10px 24px #2174b929}.avatar-button:hover{box-shadow:0 13px 28px #2174b938}.hero-panel{background:radial-gradient(circle at 88% 15%,#fff3 0 65px,#0000 66px),linear-gradient(140deg,#1179dc 0%,#279cf5 58%,#73c6ff 130%);border-radius:30px;min-height:230px;box-shadow:0 22px 48px #1983de38}.hero-kicker{color:#dbf0ff}.hero-panel p{color:#e3f3ff}.rail-route span{background:#238ee9}.rail-route span:last-of-type{background:#ffd166;border-color:#fff0bf}.primary-button{background:linear-gradient(135deg,#1687ed,#329ff5);box-shadow:0 9px 20px #1787ed33}.primary-button:hover{box-shadow:0 13px 27px #1787ed47}.primary-button.light{color:#0965b5}.outline-button{color:#0d76d2;border-color:#cadff1}.outline-button:hover{background:#f0f8ff;border-color:#7ab9ea}.metric-grid{gap:11px}.metric-card{border:1px solid #fffffff2;border-radius:25px;min-height:137px;box-shadow:0 13px 34px #30679717}.metric-card:first-child{color:#137fdc;background:linear-gradient(150deg,#fff 58%,#e8f5ff);border-top:0}.metric-card:nth-child(2){color:#a96a14;background:linear-gradient(150deg,#fff 58%,#fff3db);border-top:0}.metric-card:nth-child(3){color:#337f68;background:linear-gradient(150deg,#fff 58%,#e8f7f1);border-top:0}.metric-icon{border-radius:10px;min-width:0;height:29px;padding-inline:9px;font-size:9px}.metric-icon.mint{color:#0f73c7;background:#dcefff}.section-card{border:1px solid #fffffff5;border-radius:27px;box-shadow:0 14px 38px #30679713}.section-card:hover{border-color:#e1edf7;box-shadow:0 17px 42px #3067971a}.section-kicker{color:#3c83bd}.section-heading h3{color:#162b41;letter-spacing:-.02em}.text-button{color:#0d78d3}.activity-accordion{background:linear-gradient(145deg,#fbfdff,#f5faff);border-color:#e1ebf5}.activity-accordion.team-accordion{background:linear-gradient(145deg,#f8fbff,#faf8ff)}.accordion-trigger i{color:#137dd8;background:#e1f1ff}.team-avatar .profile-avatar,.source-badge .profile-avatar,.performance-person>button .profile-avatar{background:linear-gradient(145deg,#45a8f5,#217bd0)}.notice-row:not(.urgent):hover,.lead-row:hover{background:linear-gradient(90deg,#eef7ff,#faf8ff)}.search-wrap{border-color:#dbe8f4;border-radius:20px;box-shadow:0 10px 26px #30679712}.filter-chip.active{background:linear-gradient(135deg,#1687ed,#3da6f6);border-color:#1687ed;box-shadow:0 6px 15px #1687ed33}.form-intro{background:linear-gradient(135deg,#e7f4ff,#f0f0ff);border-left-color:#258fe7}.form-intro span{color:#116fc0}.lead-form{border-top:4px solid #5db4f5;border-radius:27px;box-shadow:0 16px 40px #30679717}.field input[readonly]{color:#096fc5;background:#edf7ff}.period-tabs{background:#e7f0f8}.period-tabs button.active{color:#0e75cc}.personal-scope-note{color:#0d70c2;background:#e6f3ff}.summary-banner{background:linear-gradient(125deg,#0f75d5 0%,#299af1 62%,#8174df 135%);border-radius:28px;box-shadow:0 18px 38px #187ed833}.summary-banner span,.summary-banner p{color:#e1f2ff}.profile-card,.message-profile{background:linear-gradient(135deg,#ffffff1a,#0000 45%),linear-gradient(125deg,#116fc6,#319ff1);border-radius:29px;box-shadow:0 18px 38px #167eda2e}.profile-card p,.message-profile p{color:#e0f1ff}.message-profile>div>span{color:#d5edff}.profile-form{border-top:4px solid #69baf5}.avatar-upload{background:linear-gradient(135deg,#f1f9ff,#f7f5ff);border-color:#b8d9f2}.message-entry b{color:#167dd5}.bottom-nav{background:#fcfefff0;border-color:#d5e4f1db;box-shadow:0 18px 45px #23578429}.nav-button{color:#8799aa}.nav-button span{border-radius:10px;place-items:center;width:30px;height:28px;font-size:17px;transition:background .18s,box-shadow .18s;display:grid}.nav-button.active{color:#117bd6;transform:none}.nav-button.active span{background:#e0f1ff;box-shadow:inset 0 0 0 1px #c9e5fa}.add-button{background:linear-gradient(145deg,#1687ed,#43aaf7);box-shadow:0 11px 25px #1687ed4d}.add-button:hover{box-shadow:0 15px 29px #1687ed59}.toast{background:linear-gradient(135deg,#18517e,#167fd8);box-shadow:0 14px 34px #125b9745}.install-app-card{background:radial-gradient(circle at 92% 10%,#5cc0f933,#0000 34%),linear-gradient(145deg,#f7fcff,#eaf6ff);border:1px solid #b9ddf7;border-radius:21px;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;padding:17px;display:grid;position:relative;overflow:hidden;box-shadow:0 13px 30px #2984c41c}.install-app-card:after{content:"";background:linear-gradient(90deg,#0000,#1f98e56b);width:120px;height:1px;position:absolute;bottom:20px;right:-28px;transform:rotate(-16deg)}.install-app-card.installed{background:linear-gradient(145deg,#f7fffc,#edf9f5);border-color:#bde5d6}.install-app-icon,.install-guide-brand>span{color:#fff;background:linear-gradient(145deg,#0879d9,#41b6f5);place-items:center;font-weight:900;display:grid;box-shadow:0 10px 22px #0a7cd53d}.install-app-icon{border-radius:16px;width:50px;height:50px;font-size:20px;overflow:hidden}.install-app-icon img{object-fit:cover;width:100%;height:100%;display:block}.install-app-copy{min-width:0}.install-app-copy>span{color:#1684d8;letter-spacing:.08em;font-size:9px;font-weight:850}.install-app-copy h3{margin:3px 0;font-size:14px}.install-app-copy p{color:#71889a;margin:0;font-size:9px;line-height:1.45}.install-app-card>button{z-index:1;color:#fff;white-space:nowrap;background:#1688df;border:0;border-radius:11px;padding:9px 11px;font-size:10px;font-weight:800;position:relative;box-shadow:0 8px 18px #1688df33}.install-app-card.installed>button{color:#247a5f;box-shadow:none;background:#dff4eb}.install-guide-backdrop{z-index:80}.install-guide-sheet{background:radial-gradient(circle at 92% 4%,#5bb9f533,#0000 9rem),#f8fcff;border-radius:30px 30px 0 0;width:min(100%,560px);max-height:92vh;padding:9px 22px 32px;animation:.3s cubic-bezier(.2,.8,.2,1) sheet-up;position:relative;overflow-y:auto;box-shadow:0 -20px 65px #0d436c47}.install-guide-sheet .close-button{position:absolute;top:17px;right:19px}.install-guide-brand{align-items:center;gap:13px;padding-right:42px;display:flex}.install-guide-brand>span{border-radius:18px;width:58px;height:58px;font-size:23px}.install-guide-brand>span img{object-fit:cover;width:100%;height:100%;display:block}.install-guide-brand small{color:#1886d8;letter-spacing:.08em;font-size:10px;font-weight:850}.install-guide-brand h2{color:#15354d;letter-spacing:-.03em;margin:4px 0 0;font-size:22px}.install-guide-sheet>p{color:#6f8495;margin:14px 0 18px;font-size:12px;line-height:1.6}.install-guide-sheet ol{gap:10px;margin:0;padding:0;list-style:none;display:grid}.install-guide-sheet li{color:#29495f;background:#fff;border:1px solid #d7e8f4;border-radius:15px;grid-template-columns:auto 1fr;align-items:center;gap:12px;padding:13px;font-size:12px;line-height:1.5;display:grid}.install-guide-sheet li b{color:#137fd2;background:#e6f4fe;border-radius:10px;place-items:center;width:28px;height:28px;font-size:11px;display:grid}.install-guide-note{color:#536f82;background:#eaf6fe;border-radius:14px;margin:14px 0;padding:12px 13px;font-size:10px;line-height:1.6}@keyframes page-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes sheet-up{0%{opacity:.4;transform:translateY(32px)}to{opacity:1;transform:translateY(0)}}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,12px)scale(.96)}to{opacity:1;transform:translate(-50%)scale(1)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=390px){.install-app-card{grid-template-columns:auto 1fr}.install-app-card>button{grid-column:1/-1;width:100%}}@media (width>=700px){.app-shell{border-radius:28px;min-height:calc(100vh - 40px);margin-block:20px;box-shadow:0 20px 70px #1732291f}}@media (width<=370px){.app-shell{padding-inline:13px}.hero-panel{padding:20px}.metric-card{padding-inline:9px}.metric-card strong{font-size:19px}.hero-actions{flex-direction:column;align-items:start}.rail-route{width:100%;max-width:250px}.message-profile{grid-template-columns:auto 1fr}.message-controls{grid-column:1/-1;grid-template-columns:auto auto;width:fit-content}}.auth-shell{color:#102c43;background:radial-gradient(circle at 86% 4%,#55bbff57,#0000 29%),radial-gradient(circle at 5% 38%,#96dcff52,#0000 28%),linear-gradient(155deg,#fbfdff 0%,#eaf7ff 48%,#f3f7ff 100%);align-content:center;gap:20px;max-width:800px;min-height:100vh;margin:0 auto;padding:28px 20px 46px;display:grid}.auth-visual,.auth-card{border:1px solid #c9e4f7eb;border-radius:34px;box-shadow:0 26px 70px #1b70b124}.auth-visual{isolation:isolate;color:#fff;background:linear-gradient(#004189bf 0%,#005baa7a 48%,#034a8929 100%),linear-gradient(90deg,#004e9eb8 0%,#0068b642 68%,#0000 100%),url(/auth-railway-hero.png) 62%/cover no-repeat;min-height:450px;padding:30px;position:relative;overflow:hidden;box-shadow:0 28px 75px #056fc842,inset 0 1px #ffffff47}.auth-visual:after{content:"";z-index:-1;opacity:.2;background-image:linear-gradient(#ffffff21 1px,#0000 1px),linear-gradient(90deg,#ffffff1a 1px,#0000 1px);background-size:48px 48px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 72%);mask-image:linear-gradient(#000,#0000 72%)}.auth-aurora{z-index:-1;filter:blur(2px);pointer-events:none;border-radius:50%;position:absolute}.auth-aurora-one{background:#aae5ff2e;width:280px;height:280px;top:-160px;right:-80px;box-shadow:0 0 90px #b2e7ff3d}.auth-aurora-two{filter:blur(34px);background:#1e61d840;border-radius:50%;width:360px;height:150px;bottom:85px;left:-80px;transform:rotate(-8deg)}.auth-visual-top{z-index:3;justify-content:space-between;align-items:center;display:flex;position:relative}.auth-brand{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#055bb238;border:1px solid #ffffff47;border-radius:17px;align-items:center;gap:11px;width:fit-content;padding:8px 14px 8px 8px;display:flex;box-shadow:inset 0 1px #ffffff2b}.auth-brand i{color:#0f7fd5;background:linear-gradient(145deg,#fff,#e8f6ff);border-radius:12px;place-items:center;width:38px;height:38px;font-style:normal;font-weight:900;display:grid;box-shadow:0 8px 20px #00468f29}.auth-brand span{letter-spacing:.04em;font-weight:850;display:grid}.auth-brand small{color:#ffffffb3;letter-spacing:.15em;margin-top:2px;font-size:7px}.auth-route-number{color:#ffffffdb;letter-spacing:.16em;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0050a11f;border:1px solid #ffffff47;border-radius:999px;align-items:center;gap:7px;padding:8px 12px;font-size:11px;font-weight:800;display:flex}.auth-route-number b,.auth-kicker i{background:#a9f1ff;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 5px #a9f1ff21}.auth-copy{z-index:3;margin-top:32px;position:relative}.auth-kicker{letter-spacing:.12em;color:#e7f7ff;align-items:center;gap:9px;font-size:12px;font-weight:800;display:flex}.auth-kicker i{width:7px;height:7px;display:inline-block}.auth-visual h1{letter-spacing:-.045em;text-wrap:balance;text-shadow:0 4px 22px #003c8738;margin:14px 0 13px;font-size:clamp(31px,7vw,44px);line-height:1.13}.auth-visual p{color:#ffffffe6;max-width:470px;margin:0;line-height:1.7}.auth-feature-pills{flex-wrap:wrap;gap:7px;margin-top:15px;display:flex}.auth-feature-pills span{color:#ffffffd6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0858af33;border:1px solid #ffffff3d;border-radius:999px;align-items:center;gap:6px;padding:6px 10px 6px 7px;font-size:9px;font-weight:700;display:inline-flex}.auth-feature-pills i{color:#bcefff;letter-spacing:.08em;font-size:7px;font-style:normal}.railway-scene{z-index:2;height:205px;position:absolute;bottom:0;left:0;right:0}.railway-scene-photo:before{content:"";pointer-events:none;background:linear-gradient(#0000,#003f7e57);position:absolute;inset:22% 0 0}.railway-skyline{opacity:.18;align-items:end;gap:8px;display:flex;position:absolute;inset:20px 18px 55px}.railway-skyline span{border:2px solid #fff;border-bottom:0;border-radius:5px 5px 0 0;flex:1}.railway-skyline span:first-child{height:34%}.railway-skyline span:nth-child(2){height:58%}.railway-skyline span:nth-child(3){height:42%}.railway-skyline span:nth-child(4){height:74%}.railway-skyline span:nth-child(5){height:48%}.train-illustration{filter:drop-shadow(0 20px 18px #093d7e47);width:118%;animation:1.1s cubic-bezier(.2,.75,.2,1) both train-arrive;position:absolute;bottom:35px;left:-9%;overflow:visible}.track-shadow{fill:none;stroke:#063a7442;stroke-width:25px}.track-line{fill:none;stroke:#ffffffdb;stroke-width:7px;stroke-linecap:round}.train-body{stroke:#ffffffeb;stroke-width:2px}.train-window{opacity:.94}.train-stripe{fill:none;stroke:#0676d8;stroke-width:10px}.train-nose{fill:none;stroke:#ffffffdb;stroke-width:3px}.train-wheel{fill:#164d79;stroke:#bbdef5;stroke-width:5px}.route-stations{grid-template-columns:repeat(3,1fr);display:grid;position:absolute;bottom:16px;left:28px;right:28px}.route-stations:before{content:"";background:#ffffff8f;height:1px;position:absolute;top:9px;left:9%;right:9%}.route-stations span{z-index:1;justify-items:center;gap:5px;display:grid;position:relative}.route-stations i{color:#0000;background:#369ff0;border:3px solid #fff;border-radius:50%;place-items:center;width:19px;height:19px;display:grid}.route-stations span:first-child i{color:#1888df;background:#fff;font-size:8px;font-style:normal}.route-stations b{color:#ffffffd1;font-size:10px}.auth-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffff0;padding:30px;position:relative;overflow:hidden}.auth-card:before{content:"";background:linear-gradient(90deg,#0000,#47b9f6,#0000);height:2px;position:absolute;top:0;left:11%;right:11%}.auth-card-heading>span{color:#1785e4;font-size:13px;font-weight:800}.auth-card-heading h2{letter-spacing:-.035em;margin:8px 0 7px;font-size:29px}.auth-card-heading p{color:#758a9b;margin:0;line-height:1.55}.auth-tabs{isolation:isolate;background:#eaf3fa;border-radius:16px;grid-template-columns:1fr 1fr;gap:4px;margin:24px 0 20px;padding:4px;display:grid;position:relative}.auth-tabs:before{content:"";z-index:-1;background:linear-gradient(145deg,#fff,#fafdff);border-radius:12px;width:calc(50% - 6px);transition:transform .32s cubic-bezier(.2,.8,.2,1);position:absolute;top:4px;bottom:4px;left:4px;box-shadow:0 6px 18px #1c68a124}.auth-tabs-register:before{transform:translate(calc(100% + 4px))}.auth-tabs button{color:#6e8293;background:0 0;border:0;border-radius:12px;padding:11px;font-weight:750;transition:color .25s,transform .2s;position:relative}.auth-tabs button:active{transform:scale(.97)}.auth-tabs button.active{color:#087bd2}.auth-form{gap:15px;animation:.34s both auth-form-in;display:grid}.auth-form label{gap:7px;display:grid}.auth-form label span{font-size:14px;font-weight:750}.auth-form input{color:#173248;background:linear-gradient(#fff,#f9fcff);border:1px solid #d5e4ef;border-radius:16px;outline:none;width:100%;min-height:54px;padding:0 16px;font-size:16px;transition:border-color .22s,box-shadow .22s,transform .22s;box-shadow:inset 0 1px 2px #194f7806}.auth-form input:focus{border-color:#3ca8ef;transform:translateY(-1px);box-shadow:0 0 0 4px #3ca8ef21,0 10px 24px #1f82c712}.password-field{position:relative}.password-field input{padding-right:68px}.password-field button{color:#177ed2;background:#e8f5fe;border:0;border-radius:10px;min-width:48px;padding:8px 6px;font-size:12px;font-weight:800;transition:background .2s,transform .2s;position:absolute;top:50%;right:9px;transform:translateY(-50%)}.password-field button:hover{background:#dff1fd}.password-field button:active{transform:translateY(-50%)scale(.95)}.password-strength{color:#8a9aa7;justify-content:space-between;align-items:center;margin-top:-7px;display:flex}.password-strength>span{gap:4px;width:45%;display:flex}.password-strength i{background:#e3eaf0;border-radius:99px;flex:1;height:4px}.password-strength small{font-size:11px}.password-strength.strength-1 i:first-child{background:#ef7a78}.password-strength.strength-2 i:nth-child(-n+2){background:#f2b84b}.password-strength.strength-3 i{background:#44bfa0}.auth-submit{color:#fff;background:linear-gradient(120deg,#0875db,#1d9af0 55%,#43baf5) 0 0/160% 100%;border:0;border-radius:17px;min-height:56px;font-size:17px;font-weight:800;transition:transform .2s,box-shadow .2s,background-position .35s;position:relative;overflow:hidden;box-shadow:0 14px 28px #0e84e145}.auth-submit:hover{background-position:100% 0;transform:translateY(-2px);box-shadow:0 17px 32px #0e84e152}.auth-submit:active{transform:translateY(0)scale(.99)}.auth-submit:disabled{cursor:wait;opacity:.72;box-shadow:none}.auth-message{color:#775712;background:#fff5d8;border-radius:13px;padding:12px 14px;font-size:14px;line-height:1.5}.auth-security{text-align:center;color:#8798a6;margin-top:17px;display:block}@keyframes auth-form-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.logout-button{color:#bf4c58;background:#fff8f9;border:1px solid #f0cfd2;border-radius:16px;width:100%;min-height:50px;font-weight:750}@media (width>=760px){.auth-shell{grid-template-columns:1.1fr .9fr;max-width:1040px}.auth-visual,.auth-card{min-height:530px}.auth-copy{margin-top:44px}.railway-scene{height:235px}.auth-card{flex-direction:column;justify-content:center;display:flex}}@media (width<=520px){.auth-shell{background:radial-gradient(circle at 85% 0,#44a9f752,#0000 28%),linear-gradient(160deg,#edf8ff 0%,#e8f4ff 53%,#f4f3ff 100%);align-content:start;gap:12px;padding:10px 10px 32px}.auth-visual{background:linear-gradient(#003e82c7 0%,#0056a47a 52%,#03488233 100%),linear-gradient(90deg,#004a969e,#0068b624),url(/auth-railway-hero.png) 61%/cover no-repeat;border-radius:30px;min-height:396px;padding:18px;box-shadow:0 24px 50px #0c6cbe45}.auth-visual:before{content:"";z-index:1;background:linear-gradient(#023d7d57,#0568b50f);border-radius:24px;position:absolute;inset:74px 10px 151px;box-shadow:inset 0 1px #ffffff1f}.auth-route-number{display:none}.auth-brand{border-radius:13px;padding:6px 10px 6px 6px}.auth-brand i{width:32px;height:32px}.auth-copy{margin-top:26px;padding:0 7px}.auth-kicker{color:#eff9ff;text-shadow:0 1px 8px #00357847}.auth-visual h1{text-shadow:0 3px 16px #003b8547;margin-top:10px;font-size:clamp(28px,8.4vw,35px);line-height:1.14}.auth-visual p{color:#fffffff0;text-shadow:0 2px 9px #003b8542;max-width:94%;font-size:12px;line-height:1.55}.auth-feature-pills{margin-top:11px}.auth-feature-pills span{background:#00489938;padding:5px 8px 5px 6px;font-size:8px}.railway-scene{background:linear-gradient(#1676d600,#043a7b57);border-top:1px solid #ffffff21;height:150px}.route-stations{bottom:8px;left:18px;right:18px}.route-stations b{font-size:9px}.auth-card{border-radius:30px;padding:27px 20px 25px;box-shadow:0 20px 45px #2b689c21}.auth-card-heading h2{font-size:27px}.auth-card-heading p{font-size:13px}.auth-tabs{margin-top:20px}.auth-form input{background:#fff;min-height:56px;font-size:16px}.auth-submit{min-height:58px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
