:root{color-scheme:dark;--bg:#0b0d17;--surface:#131725;--surface2:#1b2030;--stroke:#2b3145;--text:#f1f2fb;--muted:#a5abc0;--accent:#a691ff;--accent2:#7659e9;--good:#6ed4aa;--warn:#ffbf7b;--danger:#ff8d9a;--radius:16px;font:14px/1.45 system-ui,-apple-system,"Segoe UI",sans-serif}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text)}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}a{color:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}svg{width:19px;height:19px;stroke:currentColor;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round;flex:none}
.app-shell{min-height:100vh;display:flex}.sidebar{display:none;width:238px;flex:none;border-right:1px solid var(--stroke);padding:28px 16px;background:#0f121e;position:sticky;top:0;height:100vh;flex-direction:column}.brand,.topbar-brand{display:flex;align-items:center;gap:10px;font-weight:650;letter-spacing:-.03em;font-size:18px}.brand strong,.topbar-brand strong{color:var(--accent)}.brand-mark{display:grid;place-items:center;width:30px;height:30px;border-radius:10px;background:linear-gradient(145deg,#bdabff,#6654d1);color:#111222;font-weight:800}.side-nav{margin-top:40px;display:grid;gap:5px}.side-foot{margin-top:auto;color:var(--muted);font-size:12px;padding:12px}.main-shell{width:100%;min-width:0}.topbar{height:64px;border-bottom:1px solid var(--stroke);display:flex;align-items:center;justify-content:space-between;padding:0 18px}.topbar-brand{font-size:15px}.topbar-brand .brand-mark{width:26px;height:26px}.topbar-right{display:flex;align-items:center;gap:10px}.avatar{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#323058;color:#e4dbff;font-weight:700}.badge{display:inline-flex;align-items:center;gap:5px;border:1px solid #56498d;border-radius:99px;color:#d2c6ff;background:#2b2449;padding:4px 9px;font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.bottom-nav{position:fixed;bottom:0;left:0;right:0;height:calc(64px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);display:grid;grid-template-columns:repeat(4,1fr);background:#111521;border-top:1px solid var(--stroke);z-index:20}.nav-item{border:0;background:transparent;color:var(--muted);display:flex;align-items:center;justify-content:center;gap:5px}.bottom-nav .nav-item{flex-direction:column;font-size:10px;font-weight:600}.nav-item.active{color:var(--accent)}.nav-item.active svg{stroke-width:2.3}.side-nav .nav-item{padding:11px 13px;border-radius:10px;justify-content:flex-start;text-align:left;font-weight:600}.side-nav .nav-item.active{background:#272442}
main{padding:24px 16px 96px;max-width:1160px;margin:auto}.page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:24px}.eyebrow{color:var(--accent);text-transform:uppercase;letter-spacing:.14em;font-size:11px;font-weight:750;margin-bottom:7px}.page-title{font-size:28px;line-height:1.15;letter-spacing:-.045em;margin:0}.page-sub{color:var(--muted);margin:9px 0 0;max-width:650px}.section-title{font-size:17px;letter-spacing:-.025em;margin:0}.section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:30px 0 13px}.section-head button{flex:none}.grid{display:grid;gap:14px}.grid.two{grid-template-columns:1fr}.grid.three{grid-template-columns:1fr}.card{background:var(--surface);border:1px solid var(--stroke);border-radius:var(--radius);padding:18px;min-width:0}.card.soft{background:linear-gradient(145deg,#1e1e35,#151826);border-color:#363154}.card-title{font-size:15px;font-weight:700;margin:0 0 7px}.muted{color:var(--muted)}.small{font-size:12px}.hero{position:relative;overflow:hidden;background:linear-gradient(120deg,#252044,#161a2b 75%);border-color:#514477;padding:23px}.hero:after{content:"";position:absolute;right:-60px;top:-80px;width:230px;height:230px;border:1px solid #7765bc;border-radius:50%;opacity:.3;box-shadow:0 0 0 40px #7860a018,0 0 0 88px #7860a012;pointer-events:none}.hero>*{position:relative;z-index:1}.hero h2{font-size:24px;line-height:1.18;letter-spacing:-.04em;max-width:430px;margin:4px 0 11px}.hero p{max-width:450px;color:#c4c3d8}.hero-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:18px}.stat-value{font-size:26px;font-weight:750;letter-spacing:-.05em;margin:4px 0}.stat-label{color:var(--muted);font-size:12px}.stat-card{display:flex;align-items:center;justify-content:space-between}.stat-icon{width:39px;height:39px;border-radius:12px;display:grid;place-items:center;background:#2b2850;color:#c0b1ff}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:39px;padding:8px 13px;border-radius:10px;border:1px solid var(--stroke);background:#232839;color:var(--text);font-weight:650;text-decoration:none;white-space:nowrap}.btn svg{width:16px;height:16px}.btn:hover{border-color:#7567aa;background:#2b3044}.btn.primary{border-color:#a791ff;background:#9b84f5;color:#111324}.btn.primary:hover{background:#b6a5ff}.btn.ghost{background:transparent}.btn.danger{color:#ffc0c7;border-color:#704450;background:#3a242f}.btn.small{min-height:31px;padding:5px 9px;font-size:12px}.btn.icon-only{width:38px;padding:8px}.row{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.spacer{flex:1}.inline-actions{display:flex;gap:7px;flex-wrap:wrap}.list{display:grid;gap:9px}.list-item{display:flex;align-items:center;gap:12px;padding:13px 14px;border:1px solid var(--stroke);border-radius:12px;background:var(--surface);min-width:0}.list-item.clickable{cursor:pointer}.list-item.clickable:hover{border-color:#7361ab;background:#1a1e30}.list-main{min-width:0;flex:1}.list-title{font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list-sub{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:2px}.pill{display:inline-flex;align-items:center;border:1px solid #434960;padding:3px 8px;border-radius:99px;color:#c5cadd;font-size:11px;font-weight:650;white-space:nowrap}.pill.good{color:var(--good);border-color:#376457}.pill.warn{color:var(--warn);border-color:#68553d}.pill.danger{color:var(--danger);border-color:#69434f}.empty{border:1px dashed #42465c;border-radius:16px;padding:32px;text-align:center;color:var(--muted)}.empty .empty-icon{color:var(--accent);margin-bottom:8px}.empty .empty-icon svg{width:26px;height:26px}
.field{display:grid;gap:7px;margin:0 0 16px}.field label,.field-label{font-size:12px;font-weight:700;color:#d7dbeb}.field input,.field textarea,.field select,.search{width:100%;border:1px solid var(--stroke);background:#0d111d;color:var(--text);border-radius:10px;padding:11px 12px;outline:none;min-height:42px}.field input:focus,.field textarea:focus,.field select:focus,.search:focus{border-color:#9a83f8;box-shadow:0 0 0 3px #9274ff22}.field textarea{resize:vertical;min-height:110px}.field .hint{font-size:11px;color:var(--muted)}.field-row{display:grid;grid-template-columns:1fr;gap:12px}.choice-grid{display:flex;flex-wrap:wrap;gap:8px}.chip{border:1px solid var(--stroke);background:#191e2d;color:#c5c9d9;padding:7px 11px;border-radius:99px}.chip.selected{background:#31294f;border-color:#8d78e4;color:#e7deff}.switch-line{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 0;border-bottom:1px solid var(--stroke)}.switch-line:last-child{border-bottom:0}.switch{appearance:none;width:39px;height:23px;border-radius:99px;background:#424758;position:relative;flex:none;cursor:pointer}.switch:after{content:"";position:absolute;left:3px;top:3px;width:17px;height:17px;border-radius:50%;background:white;transition:transform .15s}.switch:checked{background:#8d73ed}.switch:checked:after{transform:translateX(16px)}.counter{text-align:right;color:var(--muted);font-size:11px;margin-top:4px}.counter.over{color:var(--danger)}.tabs{display:flex;gap:4px;overflow:auto;padding-bottom:3px;border-bottom:1px solid var(--stroke);margin-bottom:18px}.tab{border:0;background:transparent;color:var(--muted);padding:10px 12px;border-bottom:2px solid transparent;white-space:nowrap}.tab.active{color:var(--accent);border-color:var(--accent)}.divider{height:1px;background:var(--stroke);margin:18px 0}.checkbox-line{display:flex;align-items:flex-start;gap:10px;padding:9px 0}.checkbox-line input{accent-color:#a48afc;margin-top:3px}.loading{display:flex;gap:10px;align-items:center;color:var(--muted);padding:26px}.spinner{width:17px;height:17px;border-radius:50%;border:2px solid #544c73;border-top-color:#bdadff;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.modal-backdrop{position:fixed;inset:0;background:#050710bd;z-index:30;display:flex;align-items:flex-end;justify-content:center}.modal{width:100%;max-height:94vh;overflow:auto;background:#141827;border:1px solid #3a4054;border-radius:20px 20px 0 0;box-shadow:0 25px 70px #0009;padding:20px 18px calc(22px + env(safe-area-inset-bottom));outline:none}.modal.wide{max-width:760px}.modal-head{display:flex;align-items:flex-start;gap:12px;margin-bottom:20px}.modal-head h2{font-size:21px;line-height:1.2;letter-spacing:-.035em;margin:0}.modal-head p{margin:5px 0 0;color:var(--muted);font-size:12px}.modal-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:24px}.modal-tabs{margin:0 0 18px}.preview-box{background:#0c101b;border:1px solid var(--stroke);border-radius:12px;padding:14px;white-space:pre-wrap;overflow-wrap:anywhere;max-height:230px;overflow:auto}.preview-label{font-weight:700;margin:18px 0 7px}.media-preview{display:block;max-width:100%;max-height:240px;border-radius:11px;margin:10px 0;object-fit:contain}.file-note{font-size:12px;color:var(--muted)}.toast{position:fixed;z-index:50;left:50%;bottom:82px;transform:translate(-50%,12px);opacity:0;pointer-events:none;transition:opacity .18s,transform .18s;background:#eae5ff;color:#211934;border-radius:10px;padding:10px 15px;max-width:min(90vw,500px);box-shadow:0 12px 30px #0008;font-weight:650}.toast.show{opacity:1;transform:translate(-50%,0)}.error-card{border-color:#704653;background:#2a1c28}.error-card strong{color:#ffadba}.date-head{font-weight:700;color:#d8d0fd;font-size:12px;margin:23px 0 9px;text-transform:uppercase;letter-spacing:.08em}.group-head{margin:20px 0 9px;font-size:13px;color:var(--accent);font-weight:700}.demo-banner{background:#2d2447;border:1px solid #665592;border-radius:12px;padding:12px;color:#e4d9ff;margin-bottom:18px}.launch{max-width:510px;margin:12vh auto;text-align:center}.launch .brand-mark{margin:0 auto 20px;width:48px;height:48px;font-size:26px}.launch h1{font-size:25px;margin:0 0 10px}.launch p{color:var(--muted)}
.search-drafts{max-width:430px}.grid.stats-grid{margin-top:14px;grid-template-columns:repeat(3,minmax(0,1fr))}.stats-grid .card{padding:12px}.stats-grid .stat-value{font-size:23px;margin:0 0 2px}.stats-grid .stat-label{font-size:11px;line-height:1.2}.stats-grid .stat-icon{display:none}.post-textarea{min-height:210px!important}.materials-textarea{min-height:130px!important}
@media(min-width:700px){.sidebar{display:flex}.topbar{display:none}.bottom-nav{display:none}main{padding:36px 34px 60px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.page-title{font-size:34px}.modal-backdrop{align-items:center;padding:22px}.modal{border-radius:20px;max-width:560px;max-height:90vh;padding:24px}.toast{bottom:25px}}
@media(min-width:1100px){.sidebar{width:260px}.hero{padding:30px}.hero h2{font-size:28px}}
@media(max-width:360px){main{padding-left:12px;padding-right:12px}.card{padding:15px}.page-title{font-size:25px}.btn{padding:8px 10px}.list-item{padding:11px}.stats-grid{gap:7px}.stats-grid .card{padding:10px}.stats-grid .stat-value{font-size:21px}.stats-grid .stat-label{font-size:10px}}
@media(max-width:340px){.grid.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
