@font-face{font-family:Onest;src:url("/assets/Onest.ttf") format("truetype");font-weight:100 900;font-display:swap}
*{box-sizing:border-box} :root{--ink:#151124;--muted:#85798e;--line:#eae3ed;--violet:#932da1;--deep:#5a1267;--pale:#f7f2f8;--paper:#fffdfc;--bg:#fdfbfa;--dark:#21192f;--gradient:linear-gradient(135deg,#2d033e,#5a1267,#932da1,#c755ba,#e697e5);--shadow:0 12px 45px #2d033e0c}body{margin:0;font-family:Onest,Arial,sans-serif;color:var(--ink);background:var(--bg);font-size:14px;line-height:1.5}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button:focus-visible,a:focus-visible{outline:2px solid var(--violet)}button{cursor:pointer;color:inherit}button:disabled{opacity:.4;cursor:not-allowed}a{color:var(--violet)}input,textarea,select{color:var(--ink);background:white;border:1px solid #ded4e3;border-radius:9px;padding:10px 12px;min-width:0}input:focus,textarea:focus,select:focus{outline:2px solid #932da126;border-color:var(--violet)}input[type=range]{padding:0;accent-color:var(--violet)}input[type=checkbox]{accent-color:var(--violet);width:16px;height:16px}textarea{resize:vertical;line-height:1.65}h1,h2,h3,p{margin:0}h1{font-size:30px;letter-spacing:-1.1px;line-height:1.18;font-weight:650}h2{font-size:18px;letter-spacing:-.4px;font-weight:600}h3{font-size:15px;font-weight:600}small,.small{font-size:12px}.muted{color:var(--muted)}.eyebrow{font-size:10px;letter-spacing:1.8px;text-transform:uppercase;font-weight:650}.icon{display:inline-block;width:19px;height:19px;flex:none;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.btn{border:1px solid var(--line);background:var(--paper);border-radius:9px;padding:10px 15px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:500;white-space:nowrap;line-height:1.4;transition:background .15s,transform .15s}.btn:hover{background:var(--pale);border-color:#d2bfd9}.btn.primary{background:var(--deep);color:white;border-color:var(--deep)}.btn.primary:hover{background:#722080}.btn.dark{background:var(--ink);color:white;border-color:var(--ink)}.btn.ghost{border-color:transparent;background:transparent}.btn.danger{color:#ad3c53;background:#fff6f7;border-color:#f0d2d8}.btn.sm{padding:7px 10px;font-size:12px}.icon-btn{border:0;background:transparent;display:inline-flex;align-items:center;justify-content:center;width:31px;height:31px;border-radius:7px;color:var(--muted);flex:none}.icon-btn:hover{color:var(--deep);background:#efe5f2}.icon-btn.active{background:#eee0f2;color:var(--deep)}.flex{display:flex;align-items:center;gap:12px}.between{display:flex;align-items:center;justify-content:space-between;gap:15px}.stack{display:flex;flex-direction:column;gap:18px}.gap8{gap:8px}.grow{flex:1;min-width:0}.tag{display:inline-flex;align-items:center;gap:5px;padding:4px 9px;background:var(--pale);border-radius:6px;font-size:11px;font-weight:500;white-space:nowrap}.tag.purple{background:#f0e2f4;color:var(--deep)}.tag.done{background:#eaf3ee;color:#357152}.tag.warn{background:#fff0e8;color:#a65d35}.tag .dot{width:5px;height:5px;background:currentColor;border-radius:50%}.avatar{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;background:#ebe0f0;color:var(--deep);border:2px solid var(--paper);border-radius:50%;font-size:10px;font-weight:650;flex:none}.avatar.alt{background:#f5e1ef;color:#954783}.mono{font-variant-numeric:tabular-nums}.bar{height:5px;border-radius:5px;background:#eee8f1;overflow:hidden}.bar>span{display:block;height:100%;border-radius:inherit;background:var(--violet)}.empty{padding:50px 24px;text-align:center;color:var(--muted)}.empty>.icon{width:34px;height:34px;margin-bottom:10px}.empty h3{color:var(--ink);margin-bottom:6px}.empty p{margin-bottom:16px}.search{position:relative}.search>.icon{position:absolute;left:12px;top:11px;width:16px;color:var(--muted)}.search input{padding-left:36px;width:100%;font-size:12px}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:17px}.field>label{font-size:12px;font-weight:550}.field small{color:var(--muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.span2{grid-column:span 2}.notice{padding:12px 15px;border:1px solid #e4d4eb;background:#f9f4fb;border-radius:9px;font-size:12px;color:#74517e;line-height:1.6}.error-text{color:#af3854;font-size:12px;margin-top:8px;min-height:16px}.link{border:0;background:none;color:var(--violet);padding:0;font:inherit;text-align:left;cursor:pointer}.nowrap{white-space:nowrap}.hidden{display:none!important}
/* Application frame */
.app{display:grid;grid-template-columns:228px minmax(0,1fr);min-width:1120px;height:100vh;overflow:hidden}.sidebar{background:var(--paper);border-right:1px solid var(--line);display:flex;flex-direction:column;padding:30px 18px 17px;min-height:0}.brand{display:flex;align-items:center;gap:12px;padding:0 12px}.brand-symbol{width:35px;height:33px;object-fit:contain}.brand-word{width:89px;height:auto}.workspace-label{margin:30px 12px 13px;font-size:10px;letter-spacing:1.6px;color:#a298aa;font-weight:500}.workspace-card{padding:12px;background:var(--pale);border-radius:10px;display:flex;align-items:center;gap:10px;margin-bottom:27px}.workspace-k{background:var(--deep);color:white;width:30px;height:30px;border-radius:7px;display:grid;place-items:center;font-weight:600}.workspace-card strong{font-size:12px;font-weight:550}.workspace-card small{display:block;font-size:10px;color:var(--muted);margin-top:1px}.nav{display:flex;flex-direction:column;gap:6px}.nav button{border:0;background:none;text-align:left;padding:12px 14px;display:flex;align-items:center;gap:12px;border-radius:8px;color:#82768b;font-size:13px;position:relative}.nav button:hover{background:var(--pale);color:var(--ink)}.nav button.active{background:#f0e5f4;color:var(--deep);font-weight:600}.nav button.active:before{content:'';position:absolute;left:-18px;top:11px;bottom:11px;width:3px;background:var(--violet);border-radius:0 3px 3px 0}.nav .count{margin-left:auto;font-size:10px;border:1px solid #e1cfe8;padding:0 5px;border-radius:4px}.sidebar-footer{margin-top:auto}.prototype-note{padding:14px 11px;font-size:10px;color:#a295aa;line-height:1.7}.prototype-note strong{display:block;color:#75657f;font-weight:500;font-size:11px;margin-bottom:3px}.userbox{border-top:1px solid var(--line);padding:17px 5px 0;display:flex;align-items:center;gap:9px}.userbox .avatar{width:33px;height:33px}.userbox strong{font-size:11px;font-weight:550;display:block}.userbox small{font-size:10px;color:var(--muted)}.main{display:flex;flex-direction:column;min-width:0;overflow:hidden}.topbar{height:72px;flex:none;border-bottom:1px solid var(--line);padding:0 34px;display:flex;align-items:center;justify-content:space-between;background:#fffdfcaa}.breadcrumbs{font-size:12px;color:#a295aa;display:flex;gap:11px;align-items:center}.breadcrumbs strong{font-weight:500;color:#5d4e69}.top-right{font-size:11px;color:#94869f;gap:20px}.top-right .tag{font-size:10px;border:1px solid #e5d6eb;background:none;color:#80518f}.page{padding:30px 34px 40px;overflow-y:auto;flex:1;min-height:0;min-width:0}.page-head{margin-bottom:27px}.page-head .eyebrow{color:#9e8aa9;margin-bottom:8px}.page-head p{font-size:12px;color:var(--muted);margin-top:8px}.head-actions{display:flex;align-items:center;gap:8px}.panel{background:var(--paper);border:1px solid var(--line);border-radius:13px;overflow:hidden;box-shadow:var(--shadow)}.panel-head{padding:22px 24px;border-bottom:1px solid var(--line)}.panel-head p{font-size:11px;color:var(--muted);margin-top:4px}.panel-body{padding:22px 24px}.section-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.section-title h2{font-size:17px}.section-title small{color:var(--muted)}
/* Login */
.login{min-width:1100px;min-height:100vh;display:grid;grid-template-columns:1.08fr 1fr}.login-art{background:var(--ink);padding:48px 60px;display:flex;flex-direction:column;position:relative;overflow:hidden;color:white}.login-art .brand{padding:0;position:relative;z-index:2}.login-art .brand-word{filter:brightness(0) invert(1)}.login-art .brand-symbol{width:38px;height:36px}.login-art .orb{position:absolute;border-radius:50%;width:640px;height:640px;right:-250px;top:40px;background:radial-gradient(circle,#932da137,transparent 69%)}.login-art .art-symbol{position:absolute;width:320px;right:6%;top:24%;opacity:.9;transform:rotate(-9deg);filter:drop-shadow(0 45px 50px #0008)}.login-art .art-copy{position:relative;z-index:1;margin-top:auto;margin-bottom:65px}.art-copy .eyebrow{color:#cf9edb;margin-bottom:22px}.art-copy h1{font-size:43px;line-height:1.2;font-weight:500;letter-spacing:-1.6px}.art-copy p{color:#b1a3bf;max-width:320px;font-size:13px;line-height:1.9;margin-top:22px}.login-foot{display:flex;justify-content:space-between;color:#80718f;font-size:10px}.login-form-area{display:flex;align-items:center;justify-content:center;padding:60px;background:var(--bg)}.login-form{width:355px}.login-form>.eyebrow{color:#a286af;margin-bottom:16px}.login-form h1{font-size:30px}.login-form>p{font-size:12px;color:var(--muted);margin:12px 0 31px;line-height:1.8}.login-form .btn{width:100%;padding:12px}.login-sep{display:flex;align-items:center;gap:12px;color:#b4a8bc;font-size:10px;margin:17px 0}.login-sep:before,.login-sep:after{content:'';height:1px;flex:1;background:var(--line)}.login-form .notice{margin-top:23px;font-size:11px}.password-wrap{position:relative;display:flex}.password-wrap input{width:100%;padding-right:40px}.password-wrap button{position:absolute;right:5px;top:5px}
/* Overview */
.overview-top{display:grid;grid-template-columns:minmax(360px,1.25fr) minmax(360px,1fr);gap:20px;margin-bottom:27px}.progress-hero{padding:29px 30px;background:var(--ink);color:white;border-radius:13px;display:flex;align-items:center;gap:30px;position:relative;overflow:hidden;min-height:210px}.progress-hero:after{content:'';width:240px;height:240px;position:absolute;right:-65px;top:-130px;background:radial-gradient(circle,#932da158,transparent 70%);pointer-events:none}.progress-hero .eyebrow{color:#b8a1c9;font-size:9px;letter-spacing:1.6px;margin-bottom:9px}.progress-hero h2{font-size:21px;font-weight:500;color:#faf4fc}.progress-hero p{color:#a99ab8;font-size:11px;margin-top:10px;max-width:210px;line-height:1.8}.progress-hero .tag{background:#ffffff0c;color:#dbc4e5;border:1px solid #ffffff12;margin-top:19px;font-size:10px}.ring{width:148px;height:148px;position:relative;flex:none}.ring svg{width:148px;height:148px;transform:rotate(-90deg)}.ring circle{fill:none;stroke-width:7}.ring .ring-copy{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.ring strong{font-size:31px;letter-spacing:-1px;font-weight:550}.ring span{font-size:9px;color:#ab98bb;margin-top:3px}.overview-stats{display:grid;grid-template-columns:1fr 1fr;gap:13px}.stat{border:1px solid var(--line);border-radius:12px;background:var(--paper);padding:16px 19px}.stat-head{display:flex;align-items:center;justify-content:space-between;color:#9a8ba4;font-size:10px}.stat-head .icon{width:15px;height:15px}.stat strong{display:block;font-size:30px;font-weight:550;letter-spacing:-1.2px;line-height:1.3;margin-top:5px}.stat small{font-size:10px;color:var(--muted)}.overview-grid{display:grid;grid-template-columns:minmax(420px,1.35fr) minmax(300px,1fr);gap:24px}.stage-line{display:flex;align-items:center;gap:14px;padding:14px 22px;width:100%;border:0;border-bottom:1px solid #f0ebf2;background:transparent;text-align:left}.stage-line:hover{background:#fbf6fc}.stage-line:last-child{border-bottom:0}.stage-index{width:27px;height:27px;display:grid;place-items:center;border:1px solid var(--line);border-radius:7px;font-size:10px;color:#a894b2;flex:none}.stage-index.done{background:#f1e6f5;color:#8b429b;border-color:#eee0f1}.stage-line h3{font-size:11px;font-weight:500}.stage-line small{font-size:9px;color:#ad9bb5}.stage-line .bar{width:80px;height:4px}.stage-line .percent{font-size:10px;width:36px;text-align:right;color:#907f9c}.deadline-item{padding:15px 0;border-bottom:1px solid var(--line);display:flex;gap:12px;align-items:center}.deadline-item:last-child{border:0}.deadline-item strong{font-size:11px;font-weight:500;display:block}.deadline-item small{font-size:10px;color:#a38eae}.deadline-date{font-size:10px;white-space:nowrap;color:#95839f}.deadline-date.overdue{color:#ac5771}.quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.quick{border:1px solid var(--line);background:var(--paper);border-radius:10px;padding:17px 15px;text-align:left;min-height:100px}.quick:hover{background:#f8f0fa;border-color:#d8c1e1}.quick>.icon{color:var(--violet);width:20px;height:20px;margin-bottom:12px}.quick strong{display:block;font-size:11px;font-weight:550}.quick small{color:#a28dae;font-size:9px}.demo-label{font-size:9px;color:#b4a5bd;letter-spacing:.4px}
/* Tasks */
.toolbar{display:flex;align-items:center;gap:10px;margin-bottom:18px}.toolbar .search{width:260px}.toolbar select{font-size:11px;padding:9px 10px;max-width:180px}.toolbar .right{margin-left:auto;display:flex;gap:7px}.table-wrap{overflow:auto}.task-table{min-width:830px}.task-header,.task-row{display:grid;grid-template-columns:minmax(340px,1fr) 125px 120px 110px 100px 35px;align-items:center;gap:12px}.task-header{padding:13px 20px;font-size:10px;color:#9b88a6;background:#faf6fb;border-bottom:1px solid var(--line)}.task-row{min-height:59px;padding:10px 20px;border-bottom:1px solid #f0ebf2;font-size:11px;background:var(--paper)}.task-row:last-child{border:0}.task-row.stage{background:#fcf8fd;font-weight:600}.task-row:hover{background:#faf3fc}.task-title{display:flex;align-items:center;min-width:0;gap:8px;cursor:pointer}.task-title .title-text{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.task-title .title-text small{display:block;font-weight:400;color:#ad9cb5;font-size:9px}.task-check{width:17px;height:17px;border:1px solid #d6c6de;border-radius:5px;display:grid;place-items:center;background:white;color:white;flex:none;padding:0}.task-check.done{background:var(--violet);border-color:var(--violet)}.task-check .icon{width:12px;height:12px}.task-check:disabled{opacity:1;background:#f1e8f4;color:#a974b6}.task-progress{display:flex;align-items:center;gap:8px}.task-progress .bar{width:57px;height:4px}.task-progress span{font-size:10px;color:#917f9c}.stage-caption{font-size:10px;padding:11px 20px;color:#aa95b3;border-top:1px solid var(--line)}
/* Overlays */
.drawer-backdrop{position:fixed;inset:0;background:#15112425;z-index:30;backdrop-filter:blur(1px)}.drawer{position:fixed;right:0;top:0;bottom:0;width:465px;background:var(--paper);z-index:31;display:flex;flex-direction:column;box-shadow:-15px 0 60px #21192f15;animation:slide .15s ease-out}.drawer-head{padding:23px 26px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.drawer-head .eyebrow{color:#9c7eaa;font-size:9px}.drawer-head h2{margin-top:5px;font-size:18px}.drawer-body{padding:24px 26px;overflow:auto;flex:1}.drawer-foot{display:flex;align-items:center;gap:8px;padding:17px 26px;border-top:1px solid var(--line);background:var(--paper)}.drawer textarea{width:100%}.attachment{display:flex;align-items:center;gap:9px;padding:10px;border:1px solid var(--line);border-radius:7px;margin:8px 0}.attachment .grow{font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment small{display:block;color:var(--muted);font-size:9px}dialog{border:1px solid var(--line);border-radius:15px;padding:0;width:490px;max-height:90vh;box-shadow:0 25px 100px #15112430;color:var(--ink);background:var(--paper)}dialog::backdrop{background:#15112450;backdrop-filter:blur(3px)}dialog.wide{width:850px}.modal-head{padding:23px 26px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.modal-body{padding:23px 26px;overflow:auto;max-height:65vh}.modal-foot{padding:17px 26px;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:8px}.modal-body .field:last-child{margin-bottom:0}.preview-media{max-width:100%;max-height:58vh;display:block;margin:auto}.preview-frame{width:100%;height:58vh;border:0}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);padding:12px 20px;background:var(--ink);border:1px solid #574362;color:white;border-radius:10px;z-index:200;box-shadow:var(--shadow);font-size:12px;display:flex;align-items:center;gap:10px;animation:fade .2s}.toast .icon{color:#dea1e2;width:16px}.inline-subtask{display:flex;align-items:center;gap:8px;padding:10px 0;border-bottom:1px solid var(--line);font-size:11px}.inline-subtask .link{font-size:11px}.rule{border:0;border-top:1px solid var(--line);margin:22px 0}@keyframes slide{from{transform:translateX(30px);opacity:.5}to{transform:none;opacity:1}}@keyframes fade{from{opacity:0}to{opacity:1}}
/* Analytics */
.module-grid{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));gap:18px}.module-card{padding:25px;cursor:pointer;transition:transform .15s,border-color .15s}.module-card:hover{border-color:#d8b9e2;transform:translateY(-2px)}.module-icon{width:43px;height:43px;display:grid;place-items:center;border:1px solid #e8d9ee;border-radius:11px;background:var(--pale);color:var(--violet);margin-bottom:26px}.module-card h2{font-size:18px;line-height:1.35}.module-card p{font-size:11px;color:var(--muted);margin:10px 0 24px;line-height:1.8;min-height:40px}.module-card-foot{padding-top:17px;border-top:1px solid var(--line);font-size:10px;color:#a68cb1;display:flex;align-items:center;justify-content:space-between}.module-new{min-height:265px;border:1px dashed #d8c1e2;box-shadow:none;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#faf6fb;color:#a477b0;border-radius:13px;gap:13px}.module-new:hover{background:#f3eaf6}.module-new .icon{width:27px;height:27px}.module-new strong{font-size:12px;font-weight:500}.year-tabs{display:flex;gap:3px;background:#f1e9f4;border:1px solid #eadeef;border-radius:8px;padding:3px}.year-tabs button{padding:6px 14px;border:0;border-radius:5px;background:none;color:#9e82ad;font-size:11px}.year-tabs button.active{background:white;color:var(--deep);box-shadow:0 2px 6px #45105b0b}.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:22px}.kpi{padding:20px 22px}.kpi .eyebrow{letter-spacing:.7px;color:#a08bad;font-size:9px}.kpi strong{display:block;font-size:25px;font-weight:550;letter-spacing:-.9px;margin-top:10px}.kpi small{color:#a18bad;font-size:10px}.chart-panel{padding:23px 25px;margin-bottom:22px}.chart-legend{font-size:10px;color:var(--muted);display:flex;align-items:center;gap:14px}.legend-dot{width:7px;height:7px;border-radius:2px;display:inline-block;margin-right:5px;background:var(--violet)}.chart-svg{width:100%;height:235px;overflow:visible;display:block;margin-top:20px}.data-table{border-collapse:separate;border-spacing:0;width:100%;font-size:11px;white-space:nowrap}.data-table th{font-weight:500;color:#a28aad;background:#faf6fc;text-align:right;padding:12px 16px;border-bottom:1px solid var(--line)}.data-table th:first-child{text-align:left}.data-table td{padding:11px 16px;text-align:right;border-bottom:1px solid #f0eaf3}.data-table td:first-child{text-align:left;position:sticky;left:0;background:var(--paper);min-width:220px;max-width:300px;overflow:hidden;text-overflow:ellipsis;z-index:1}.data-table th:first-child{position:sticky;left:0;z-index:2}.data-table tr.group td{background:#f8f0fa;color:var(--deep);font-weight:550}.data-table tr.result td{background:#faf5fc;font-weight:600}.data-table tr:last-child td{border:0}.source-note{color:#a28ead;font-size:10px;margin:15px 0;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.source-note .icon{width:13px;height:13px}.tam-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-bottom:22px}.funnel{padding:30px 25px}.funnel-row{margin-bottom:22px}.funnel-row:last-child{margin:0}.funnel-row .between{font-size:11px;margin-bottom:10px}.funnel-row .bar{height:20px;border-radius:4px}.funnel-row .bar>span{border-radius:4px;background:var(--gradient)}.funnel-row small{color:var(--muted);font-size:9px}.blocks-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:20px 0}.widget-card{padding:22px}.widget-card h3{margin-bottom:16px}.widget-value{font-size:34px;font-weight:550;letter-spacing:-1px}.formula-error{color:#b83c58!important;background:#fff0f3!important}.editor-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:12px}.editor-top .grow{font-size:11px;color:var(--muted)}.formula-bar{display:flex;border:1px solid var(--line);border-radius:9px;background:white;overflow:hidden;align-items:center;margin-bottom:12px}.cell-address{font-size:11px;color:var(--deep);padding:10px 14px;border-right:1px solid var(--line);background:var(--pale);min-width:82px;text-align:center;font-variant-numeric:tabular-nums}.formula-bar>span{font-size:13px;color:#b397bd;padding-left:14px;font-style:italic}.formula-bar input{border:0;outline:0!important;box-shadow:none;width:100%;border-radius:0;font-size:12px;padding:11px}.sheet-scroll{max-height:420px;overflow:auto;position:relative;background:white;border:1px solid var(--line);border-radius:8px}.sheet-grid{border-collapse:separate;border-spacing:0;table-layout:fixed;font-size:11px;min-width:100%}.sheet-grid th{position:sticky;top:0;background:#f6eff8;color:#9981a6;font-weight:450;border-bottom:1px solid #e3d7e9;border-right:1px solid #e3d7e9;height:29px;min-width:105px;width:105px;z-index:2;text-align:center}.sheet-grid th:first-child{left:0;z-index:3;min-width:40px;width:40px}.sheet-grid td{border-right:1px solid #eee7f1;border-bottom:1px solid #eee7f1;min-width:105px;width:105px;height:29px;max-width:105px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:5px 7px;cursor:cell;text-align:right}.sheet-grid td.row-number{position:sticky;left:0;background:#f9f5fb;color:#ab95b5;text-align:center;width:40px;min-width:40px;z-index:1;font-size:10px}.sheet-grid td.text-cell{text-align:left}.sheet-grid td.selected{background:#f1e1f6;box-shadow:inset 0 0 0 2px var(--violet)}.sheet-grid td.in-range{background:#f7eefb}.sheet-grid td.has-formula{color:#8c3c9c}.sheet-tabs{display:flex;align-items:center;gap:5px;padding:9px 0}.sheet-tabs button{padding:7px 14px;font-size:11px;background:transparent;border:1px solid transparent;border-radius:7px;color:#9c80a9}.sheet-tabs button.active{border-color:#d9c3e2;background:#f2e7f6;color:var(--deep)}.sheet-hint{font-size:10px;color:#a08dab;margin:5px 0 20px;line-height:1.9}.widget-config{padding:17px 20px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:13px}.widget-config:last-child{border:0}.widget-config .icon{color:#a26aad}.widget-config h3{font-size:12px}.widget-config small{font-size:10px;color:#ad96b7}.editor-section{margin-top:24px}.editor-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
/* Materials */
.file-breadcrumb{display:flex;align-items:center;gap:8px;margin-bottom:20px;color:#b4a1bd;font-size:12px}.file-breadcrumb button{font-size:12px;color:#9b76ab}.file-breadcrumb button:last-of-type{color:var(--ink);font-weight:550}.file-grid{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:16px}.file-card{background:var(--paper);border:1px solid var(--line);border-radius:11px;overflow:hidden}.file-card:hover{border-color:#d9c3e3}.file-card-visual{height:111px;background:#faf6fb;display:flex;align-items:center;justify-content:center;cursor:pointer;position:relative}.file-card-visual .icon{width:42px;height:42px;color:#ba92c9;stroke-width:1.2}.file-card.folder .file-card-visual{background:#f7effa}.file-card.folder .file-card-visual .icon{fill:#ead8f1;stroke:#b985ce}.file-card-visual img{height:70px;max-width:90%;object-fit:contain}.file-card-info{padding:14px 15px;display:flex;gap:8px;align-items:center}.file-card-info strong{font-size:11px;font-weight:500;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.file-card-info small{font-size:9px;color:#ad98b7}.file-actions{display:flex;gap:0;padding:0 8px 10px;justify-content:flex-end}.file-actions .icon-btn{width:28px;height:25px}.file-actions .icon{width:14px;height:14px}.file-drop{padding:25px;border:1px dashed #dac8e2;border-radius:11px;margin-top:22px;text-align:center;font-size:11px;color:#aa8db7;display:flex;align-items:center;justify-content:center;gap:12px;background:#fcf8fd}.file-drop.dragover{background:#eee0f4;border-color:var(--violet)}.file-list .data-table td:first-child{min-width:260px}.file-list .data-table td{vertical-align:middle}.file-list .file-name{display:flex;align-items:center;gap:12px}.file-name .icon{color:#b08ac0}.view-toggle{display:flex;align-items:center;border:1px solid var(--line);padding:2px;border-radius:7px;background:white}.view-toggle .icon-btn{width:29px;height:28px}
/* Prompt map */
.prompts-page{display:flex;flex-direction:column;overflow:hidden;padding-bottom:22px}.prompts-page .page-head{margin-bottom:20px}.prompt-toolbar{display:flex;align-items:center;gap:12px;margin-bottom:14px}.space-tabs{display:flex;gap:5px;align-items:center}.space-tab{border:1px solid var(--line);border-radius:7px;display:flex;align-items:center;background:white;overflow:hidden}.space-tab.active{border-color:#d4b8df;background:#f4eaf8}.space-tab>button{background:none;border:0;padding:8px 14px;font-size:12px;color:#a27aaf}.space-tab.active>button{color:var(--deep);font-weight:550}.space-tab .icon-btn{padding:0;width:22px;margin-right:5px}.space-tab .icon{width:12px;height:12px}.prompt-toolbar .search{width:240px;margin-left:auto}.map-viewport{flex:1;min-height:340px;overflow:hidden;position:relative;border:1px solid var(--line);border-radius:12px;background-color:#faf7fc;background-image:radial-gradient(#d9cbdc 1px,transparent 1px);background-size:22px 22px;touch-action:none;cursor:grab}.map-viewport.panning{cursor:grabbing}.map-world{position:absolute;left:0;top:0;width:4000px;height:3000px;transform-origin:0 0}.map-edges{position:absolute;inset:0;width:4000px;height:3000px;pointer-events:none;overflow:visible}.map-edge{fill:none;stroke:#c4a3d1;stroke-width:2;pointer-events:stroke;cursor:pointer}.map-edge:hover{stroke:#932da1;stroke-width:5}.prompt-node{position:absolute;width:238px;min-height:141px;border:1px solid #e4d6ea;border-radius:11px;background:var(--paper);box-shadow:0 4px 15px #35134405;cursor:grab;user-select:none;overflow:hidden}.prompt-node:hover{border-color:#c69cd5;box-shadow:0 8px 25px #3513440c}.prompt-node.selected{border-color:var(--violet);box-shadow:0 0 0 3px #932da114}.prompt-node.connecting{border-color:var(--violet);box-shadow:0 0 0 3px #c755ba33}.node-top{padding:13px 16px 5px;display:flex;align-items:center;justify-content:space-between;font-size:8px;color:#af8cbc;letter-spacing:1px;text-transform:uppercase}.node-dot{width:6px;height:6px;border-radius:2px;background:#c755ba}.node-title{padding:1px 16px 6px;font-size:13px;font-weight:550;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.node-excerpt{padding:0 16px;font-size:10px;line-height:1.7;color:#ad98b7;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:34px}.node-bottom{padding:8px 10px 8px 16px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #f1eaf5;margin-top:12px}.node-bottom small{font-size:9px;color:#b7a3c0}.node-bottom .icon-btn{width:25px;height:25px}.node-bottom .icon{width:14px;height:14px}.map-controls{position:absolute;bottom:18px;right:18px;display:flex;gap:5px;background:var(--paper);padding:5px;border:1px solid var(--line);border-radius:9px;box-shadow:var(--shadow);align-items:center;z-index:3}.map-controls span{font-size:10px;color:#9b80a8;width:38px;text-align:center}.map-hint{position:absolute;bottom:23px;left:21px;font-size:10px;color:#b09bbb;pointer-events:none}.map-connect-hint{position:absolute;top:16px;left:50%;transform:translateX(-50%);background:var(--deep);color:white;border-radius:8px;padding:10px 18px;font-size:11px;z-index:4}.map-maplabel{position:absolute;top:22px;left:24px;pointer-events:none;font-size:9px;letter-spacing:2px;color:#c1aecb}.prompt-editor textarea{min-height:280px}.prompt-info{display:flex;gap:10px;margin-bottom:22px;align-items:center}.prompt-info .module-icon{margin:0;width:35px;height:35px}
@media(min-width:1650px){.page{padding-left:48px;padding-right:48px}.topbar{padding-left:48px;padding-right:48px}.overview-top{grid-template-columns:1.25fr 1fr}.progress-hero{gap:45px}.overview-grid{grid-template-columns:1.5fr 1fr}.file-grid{grid-template-columns:repeat(5,minmax(150px,1fr))}.module-grid{grid-template-columns:repeat(3,minmax(250px,1fr))}}@media(max-height:780px){.sidebar{padding-top:24px}.workspace-label{margin-top:23px}.workspace-card{margin-bottom:20px}.page{padding-top:25px}.page-head{margin-bottom:22px}.progress-hero{min-height:195px;padding:25px}.overview-top{margin-bottom:23px}.ring{width:138px;height:138px}.ring svg{width:138px;height:138px}}

.task-row{font-size:12px}.stage-line h3{font-size:12px}.stage-line small{font-size:10px}.data-table{font-size:12px}.deadline-item strong{font-size:12px}.deadline-item small,.deadline-date{font-size:11px}.quick strong{font-size:12px}.quick small{font-size:10px}.page-head>div:first-child{min-width:0;flex:1}.page-head h1{overflow-wrap:anywhere}.head-actions{flex:none}.sheet-grid th:nth-child(2),.sheet-grid td:nth-child(2){width:220px;min-width:220px;max-width:220px}.sheet-grid td{font-size:12px}.sheet-grid td.row-number{font-size:10px}

.project-progress-card{padding:26px 29px 23px;min-height:240px;display:flex;flex-direction:column;justify-content:space-between;gap:25px;position:relative;background:radial-gradient(ellipse at 85% 0%,#932da12b,transparent 58%),#151124;border:1px solid #32243d;box-shadow:0 3px 6px #1511240c,0 16px 32px #2d033e0b;overflow:visible!important}
.project-progress-head{display:flex;justify-content:space-between;align-items:center;gap:15px}
.project-progress-head h2{font-size:14px;font-weight:500;color:#e4d3ed;letter-spacing:-.1px}
.project-progress-head p{font-size:11px;color:#917a9f;margin-top:6px}
.project-progress-value{font-size:36px;font-weight:500;letter-spacing:-1.6px;line-height:1;color:#f3e3f9}
.project-progress-middle{padding-top:7px}
.progress-track-wrap{position:relative;isolation:isolate}
.linear-progress-track{position:relative;height:9px;border-radius:20px;background:#392b46;box-shadow:inset 0 1px 3px #09041050}
.linear-progress-fill{height:100%;position:relative;overflow:hidden;border-radius:inherit;background:linear-gradient(90deg,#7c258f,#ae4fb6,#dea0e2);box-shadow:0 0 16px #c755ba27}
.progress-shine{position:absolute;inset:0;overflow:hidden;border-radius:inherit}
.progress-shine:after{content:'';position:absolute;left:-60%;top:0;height:100%;width:60%;background:linear-gradient(90deg,transparent,#fff8,transparent);transform:skewX(-25deg);animation:progress-glide 3.4s cubic-bezier(.45,0,.55,1) infinite}
.progress-endpoint{position:absolute;top:50%;width:11px;height:11px;border-radius:50%;transform:translate(-50%,-50%);background:#f2cef6;border:2px solid #f8e3fc;box-shadow:0 0 12px #df91e5aa;pointer-events:none}
.progress-endpoint:after{content:'';position:absolute;inset:-6px;border-radius:50%;border:1px solid #e697e5;animation:progress-pulse 2.6s ease-out infinite;pointer-events:none}
.progress-endpoint.complete{background:#fff0ff}
.progress-stage-zones{position:absolute;left:0;right:0;top:-12px;height:33px;display:grid;z-index:2}
.progress-stage-zone{position:relative;border:0;background:transparent;padding:0;border-radius:5px;cursor:pointer}
.progress-stage-zone:focus-visible{outline:1px solid #d894e3;outline-offset:3px}
.progress-stage-tooltip{position:absolute;left:50%;bottom:43px;transform:translate(-50%,5px);width:max-content;max-width:230px;min-width:150px;background:#2c2039;border:1px solid #624373;box-shadow:0 7px 24px #09041050;border-radius:10px;padding:11px 13px;text-align:left;color:#e7d6f0;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s,transform .18s,visibility .18s;z-index:4}
.progress-stage-tooltip span{font-size:11px;line-height:1.5;display:block;font-weight:400}
.progress-stage-tooltip strong{font-size:13px;font-weight:550;display:block;margin-top:5px;color:#e9b2ee}
.progress-stage-tooltip:after{content:'';position:absolute;bottom:-5px;left:calc(50% - 4px);width:8px;height:8px;background:#2c2039;border-right:1px solid #624373;border-bottom:1px solid #624373;transform:rotate(45deg)}
.progress-stage-zone:first-child .progress-stage-tooltip{left:0;transform:translate(0,5px)}
.progress-stage-zone:last-child .progress-stage-tooltip{left:auto;right:0;transform:translate(0,5px)}
.progress-stage-zone:hover .progress-stage-tooltip,.progress-stage-zone:focus-visible .progress-stage-tooltip{visibility:visible;opacity:1;transform:translate(-50%,0)}
.progress-stage-zone:first-child:hover .progress-stage-tooltip,.progress-stage-zone:last-child:hover .progress-stage-tooltip,.progress-stage-zone:first-child:focus-visible .progress-stage-tooltip,.progress-stage-zone:last-child:focus-visible .progress-stage-tooltip{transform:translate(0,0)}
.progress-scale{display:flex;justify-content:space-between;margin-top:15px;font-size:9px;letter-spacing:.2px;color:#816b90;font-variant-numeric:tabular-nums}
.project-progress-foot{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:10px;color:#a18aaf}
.progress-stages-link{display:flex;align-items:center;gap:7px;border:0;border-radius:7px;background:transparent;color:#ceb1dd;font:inherit;font-weight:500;padding:5px 7px;margin-right:-7px;transition:background .18s,color .18s}
.progress-stages-link:hover{background:#ffffff0a;color:#f3dcff}.progress-stages-link .icon{width:14px;height:14px}
.prompt-files-section{margin-top:24px;border-top:1px solid var(--line);padding-top:19px}
.prompt-files-section h3{font-size:13px}.prompt-files-section h3 span{color:#a58cb2;margin-left:5px;font-weight:400}
.prompt-files-section .attachment{margin-top:10px}.prompt-files-section .attachment>.icon{color:#a67ab8;width:17px}
.prompt-files-empty{color:var(--muted);font-size:11px;margin-top:12px;line-height:1.7}
.node-file-badge{display:inline-flex;align-items:center;gap:3px;margin-left:8px;color:#8a589c}
.node-file-badge .icon{width:10px;height:10px}.node-bottom>small{display:flex;align-items:center}
@keyframes progress-glide{0%,8%{left:-65%;opacity:0}18%{opacity:.8}78%{opacity:.8}90%,100%{left:130%;opacity:0}}
@keyframes progress-pulse{0%{transform:scale(.5);opacity:.5}80%,100%{transform:scale(1.45);opacity:0}}
@media(max-height:780px){.project-progress-card{min-height:222px;padding-top:23px;padding-bottom:20px;gap:22px}}
@media(prefers-reduced-motion:reduce){.progress-shine:after,.progress-endpoint:after{animation:none!important}.progress-shine:after{display:none}}

:root{--line:#eae3ee;--shadow:0 2px 5px #2d033e03,0 12px 30px #2d033e05}
.deadline-item .grow>.link{display:block}.deadline-item .grow>small{display:block;margin-top:3px}
.panel{border-radius:16px}.btn{border-radius:10px;font-weight:550;transition:background .18s,border-color .18s,box-shadow .18s,transform .18s}.btn.primary{box-shadow:0 2px 4px #2d033e12}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0);box-shadow:none}.icon-btn{border-radius:8px;transition:color .18s,background .18s}.nav button{border-radius:10px}.workspace-card{border-radius:12px}.tag{border-radius:7px}.stat{border-radius:14px;padding:19px 21px;box-shadow:0 2px 5px #2d033e03}.stat-head{font-size:11px;color:#8c7c98}.stat strong{margin-top:7px;font-weight:550}.stat small{font-size:10px}.stage-line{padding:16px 24px;border-bottom-color:#f1ebf4;transition:background .18s}.stage-line h3{font-size:13px;font-weight:500}.stage-index{border-radius:8px;background:#faf6fc}.stage-index.done{background:#f1e6f6}.stage-line .percent{font-size:11px}.bar{height:4px}.quick{border-radius:13px;padding:19px 17px;transition:background .18s,border-color .18s,box-shadow .18s}.quick strong{font-size:13px}.quick:hover{box-shadow:var(--shadow)}.file-card{border-radius:14px}.file-card-info strong{font-size:12px}.module-card{padding:27px}.module-card p{font-size:12px}.module-icon{border-radius:13px}.prompt-node{border-radius:13px;box-shadow:0 3px 7px #35134404,0 10px 24px #35134403}.node-title{font-size:14px;font-weight:550}.task-row{min-height:61px}.task-title .title-text{font-size:13px}.drawer{box-shadow:-12px 0 60px #21192f12}.attachment{border-radius:10px;background:#fffdfc;padding:11px}.attachment .grow{font-size:12px}.top-right>span:first-child::first-letter{text-transform:uppercase}

.sync-status{border:1px solid #e5d6eb;background:none;color:#80518f;cursor:pointer;font:inherit;font-size:10px}.sync-status.saved .dot{background:#5b8b72}.sync-status.saving .dot,.sync-status.uploading .dot{animation:save-blink 1s ease-in-out infinite}.sync-status.error,.sync-status.offline,.sync-status.conflict{color:#a24663;border-color:#edcbd6;background:#fff5f7}.session-loading{height:100vh;display:grid;place-items:center;color:#84678f;font:14px Onest,sans-serif}@keyframes save-blink{50%{opacity:.3}}@media(prefers-reduced-motion:reduce){.sync-status .dot{animation:none!important}}

.chat-page{display:flex;flex-direction:column;padding-bottom:26px;overflow:hidden}.chat-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;flex:none;margin-bottom:23px}.chat-heading h1{font-size:28px;letter-spacing:-.9px}.chat-members{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:11px}.chat-members>div{display:flex;padding-left:6px}.chat-members .avatar{margin-left:-6px;width:29px;height:29px}.chat-shell{min-height:0;flex:1;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:18px;background:var(--paper);box-shadow:0 8px 40px #2d033e06;overflow:hidden;transition:border-color .2s,box-shadow .2s}.chat-shell.is-dragover{border-color:var(--violet);box-shadow:inset 0 0 0 2px #932da166,0 8px 40px #2d033e0c}.chat-toolbar{padding:16px 22px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:14px;flex:none}.chat-toolbar .search{width:100%;max-width:400px}.chat-toolbar .search input{height:38px;border-color:transparent;background:#f6f2f8;font-size:12px;border-radius:10px;padding-right:15px}.chat-toolbar .search input:focus{border-color:#cba8d5;background:white;outline:2px solid #932da114}.chat-favorites-filter{margin-left:auto;display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:9px;background:transparent;padding:8px 12px;font-size:11px;color:#8a7a96;transition:all .16s}.chat-favorites-filter .icon{width:16px;height:16px}.chat-favorites-filter:hover,.chat-favorites-filter.active{background:#f3e9f6;border-color:#dfc8e6;color:var(--deep)}.chat-favorites-filter.active .icon{fill:#932da119}.chat-feed-wrap{position:relative;min-height:0;flex:1;background:linear-gradient(135deg,#fcf9fd,#f8f5fa)}.chat-feed{height:100%;overflow-y:auto;overscroll-behavior:contain;padding:22px 32px 28px;scrollbar-width:thin;scrollbar-color:#dfd1e5 transparent}.chat-feed:has(.chat-empty){display:flex;flex-direction:column}.chat-empty{flex:1;min-height:130px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;color:#a68cae;font-size:12px}.chat-empty>.icon{width:35px;height:35px;stroke-width:1.1;color:#c8b4d0}.chat-date{display:flex;justify-content:center;margin:16px 0 23px}.chat-date:first-child{margin-top:0}.chat-date span{border:1px solid #eae1ee;border-radius:20px;padding:4px 12px;background:#fffdfcbd;color:#a18aa9;font-size:10px}.chat-message{display:flex;align-items:flex-end;gap:10px;margin-bottom:19px;animation:chat-appear .18s ease-out}.chat-message>.avatar{margin-bottom:2px;width:28px;height:28px;border-color:#fcf9fd;font-size:9px}.chat-message-main{min-width:0;max-width:min(76%,660px)}.chat-meta{display:flex;align-items:center;gap:10px;font-size:10px;color:#a28dab;margin:0 1px 6px}.chat-meta>span{color:#8d6e99;font-weight:550}.chat-meta time{font-variant-numeric:tabular-nums;font-size:9px}.chat-message-line{display:flex;align-items:center;gap:8px}.chat-bubble{padding:12px 16px;border:1px solid #e9deee;border-radius:14px 14px 14px 4px;background:var(--paper);box-shadow:0 2px 4px #2d033e03;min-width:50px;min-height:42px;max-width:100%}.chat-text{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.7}.chat-text a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.chat-text mark,.chat-file mark{background:#f2dce8;color:inherit;border-radius:3px;padding:1px 0}.chat-message.is-own{flex-direction:row-reverse}.chat-message.is-own .chat-meta{justify-content:flex-end}.chat-message.is-own .chat-message-line{flex-direction:row-reverse}.chat-message.is-own .chat-bubble{border-color:#683077;background:linear-gradient(135deg,#663075,#50145f);color:#fff7ff;border-radius:14px 14px 4px 14px;box-shadow:0 3px 10px #5a12670a}.chat-message.is-own .chat-text a{color:#f3cdf6}.chat-message.is-own .chat-text mark{background:#bd78bc77;color:white}.chat-star{width:28px;height:28px;border:0;border-radius:8px;flex:none;display:grid;place-items:center;background:transparent;color:#ad96b5;opacity:0;transition:opacity .15s,background .15s,color .15s}.chat-star>.icon{width:16px;height:16px;stroke-width:1.5}.chat-message:hover .chat-star,.chat-message:focus-within .chat-star,.chat-star.is-favorite{opacity:1}.chat-star:hover{background:#eee2f2;color:var(--deep)}.chat-star.is-favorite{color:#9757a4}.chat-star.is-favorite>.icon{fill:#bc80c22b}.chat-message-files{display:grid;gap:8px;min-width:230px;max-width:360px}.chat-text+.chat-message-files{margin-top:10px}.chat-file{border:1px solid #e9deed;border-radius:9px;background:#faf7fc;overflow:hidden}.chat-file-download{display:flex;align-items:center;gap:11px;padding:11px 12px;text-decoration:none;color:#5f3d6d}.chat-file-download>.icon:first-child{width:22px;height:22px;stroke-width:1.4;flex:none}.chat-file-download>span{min-width:0;flex:1;font-size:11px;line-height:1.5;overflow-wrap:anywhere}.chat-file-download small{display:block;color:#a18aa9;font-size:9px;margin-top:3px}.chat-file-download>.icon:last-child{width:15px;height:15px;color:#ac91b5}.chat-file-download:hover{background:#f0e5f5}.chat-message.is-own .chat-file{background:#ffffff0d;border-color:#ffffff27}.chat-message.is-own .chat-file-download{color:#f8e8ff}.chat-message.is-own .chat-file-download small,.chat-message.is-own .chat-file-download>.icon:last-child{color:#d1b3d9}.chat-message.is-own .chat-file-download:hover{background:#ffffff0a}.chat-image{display:block;border:0;padding:0;background:#21192f10;width:100%;max-height:220px;overflow:hidden}.chat-image img{display:block;width:100%;max-height:220px;object-fit:contain}.chat-composer{border-top:1px solid var(--line);padding:15px 20px 16px;flex:none;background:var(--paper)}.chat-compose-row{display:flex;gap:12px;align-items:flex-end;padding:5px 6px 5px 4px;border:1px solid #e8dfec;border-radius:13px;background:#fcfafc;transition:border-color .15s,box-shadow .15s}.chat-compose-row:focus-within{border-color:#c7a6d1;box-shadow:0 0 0 3px #932da107}.chat-compose-row textarea{border:0;outline:0;background:none;resize:none;flex:1;padding:9px 0;font-size:13px;line-height:1.6;min-height:38px;max-height:140px;border-radius:0;overflow-y:auto}.chat-compose-row textarea:focus{outline:0}.chat-compose-row textarea::placeholder{color:#b3a2bc}.chat-attach{width:36px;height:38px;flex:none;border:0;border-radius:8px;background:none;color:#a38aad;display:grid;place-items:center}.chat-attach:hover{background:#efe5f3;color:var(--deep)}.chat-attach .icon{width:20px;height:20px;stroke-width:1.5}.chat-send{height:36px;width:38px;flex:none;border:0;background:var(--deep);color:white;border-radius:9px;display:grid;place-items:center;margin-bottom:1px;transition:background .15s,transform .15s}.chat-send:not(:disabled):hover{background:#7b2b89;transform:translateY(-1px)}.chat-send:disabled{opacity:.3}.chat-send .icon{width:18px;height:18px}.chat-send.is-sending .icon{animation:save-blink 1s infinite}.chat-draft-files{display:flex;gap:8px;overflow-x:auto;scrollbar-width:thin;max-height:86px}.chat-draft-files:not(:empty){padding-bottom:12px}.chat-draft-file{display:flex;align-items:center;gap:9px;flex:none;max-width:250px;background:#f5eef8;border:1px solid #e7d9ed;border-radius:9px;padding:8px 9px;color:#896995}.chat-draft-file>.icon{width:17px;height:17px}.chat-draft-file>span{min-width:0;font-size:10px;max-width:168px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-draft-file small{display:block;font-size:9px;color:#b099b9}.chat-draft-file button{display:grid;place-items:center;width:22px;height:22px;border:0;border-radius:5px;background:none;color:#a78db1}.chat-draft-file button:hover{background:#e9daef}.chat-draft-file button .icon{width:13px;height:13px}.chat-error{font-size:11px;color:#a24663;margin:9px 3px 0}.chat-earlier{display:flex;justify-content:center;margin-bottom:20px}.chat-earlier button{display:flex;align-items:center;gap:5px;background:none;border:0;color:#a388ae;font-size:10px;padding:5px 12px;border-radius:20px}.chat-earlier button:hover{background:#eee4f3}.chat-earlier .icon{width:13px;height:13px}.chat-new{position:absolute;bottom:16px;left:50%;transform:translateX(-50%);border:1px solid #d9c4e2;border-radius:20px;background:var(--paper);box-shadow:0 4px 18px #5a12671a;color:var(--deep);font-size:11px;padding:8px 15px;white-space:nowrap}.chat-new:hover{background:#f5edf8}@keyframes chat-appear{from{opacity:.5;transform:translateY(3px)}to{opacity:1;transform:none}}@media(max-width:1250px){.chat-feed{padding-left:22px;padding-right:22px}.chat-message-main{max-width:82%}.chat-toolbar .search{max-width:320px}}@media(prefers-reduced-motion:reduce){.chat-message{animation:none}.chat-shell,.chat-star,.chat-send{transition:none}.chat-send.is-sending .icon{animation:none}}
