:root{--bg: #f5f5fa;--surface: #ffffff;--line: #e4e5ee;--line-2: #ececf3;--field: #d7d8e4;--text: #16182e;--text-2: #3a3d55;--muted: #5b5f76;--muted-2: #6b6f86;--brand: #1b1d4a;--primary: #2c2f78;--primary-soft: #eceefb;--accent: #f0866a;--cream: #fbf6ec;--ok-bg: #e3f5ea;--ok: #17663a;--ok-dot: #22a35a;--soon-bg: #fff1d6;--soon: #7a4f00;--soon-dot: #e8a317;--off-bg: #eef0f4;--off: #454b5b;--off-dot: #8a91a0;--err-bg: #fdecec;--err: #8f1d1d;--err-line: #d92d20;--radius: 18px;--radius-s: 12px;--font: Inter, system-ui, -apple-system, "Segoe UI", sans-serif;--display: "Bricolage Grotesque", Inter, sans-serif;--mono: "JetBrains Mono", ui-monospace, monospace;color-scheme:light}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--text);font:14px/1.45 var(--font)}a{color:var(--primary)}a:hover{color:var(--brand)}h1,h2,h3{margin:0}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid #5b62d6;outline-offset:2px}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}th,label,.card{position:relative}.muted{color:var(--muted)}.small{font-size:12.5px}.mono{font-family:var(--mono);font-size:13px;letter-spacing:.02em}.right{text-align:right}.grow{flex:1;min-width:0}.stack{display:flex;flex-direction:column;gap:2px;min-width:0}.inline{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.loading{padding:48px;text-align:center;color:var(--muted)}.login{min-height:100vh;display:flex;flex-wrap:wrap}.login-brand{flex:1 1 420px;min-height:340px;padding:48px;display:flex;flex-direction:column;justify-content:space-between;gap:32px;color:var(--cream);background:radial-gradient(120% 90% at 40% 30%,#2c2f78,#1b1d4a 60%,#14163a)}.login-brand .brand{color:var(--cream)}.login-copy{max-width:440px;display:flex;flex-direction:column;gap:10px}.login-copy h2{font:600 34px/1.08 var(--display);letter-spacing:-.02em}.login-copy p{margin:0;font-size:15px;line-height:1.55;color:#fbf6ecd1}.login-form{flex:999 1 480px;display:flex;align-items:center;justify-content:center;padding:48px 24px;background:var(--surface)}.login-form form{width:100%;max-width:380px;display:flex;flex-direction:column;gap:18px}.login-form h1{font:600 32px/1.1 var(--display);letter-spacing:-.02em;margin-bottom:6px}.tag{margin-left:4px;padding:4px 8px;border-radius:8px;background:#fbf6ec24;font:500 11px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase}.shell{min-height:100vh;display:flex;flex-wrap:wrap;align-items:stretch}.side{flex:1 1 232px;background:var(--brand);color:var(--cream);padding:22px 14px;display:flex;flex-direction:column;gap:22px}.brand{display:flex;align-items:center;gap:9px;padding:0 8px;font:600 21px var(--display);letter-spacing:-.02em;color:var(--cream);text-decoration:none}.brand:hover{color:var(--cream)}.nav{display:flex;flex-direction:column;gap:4px}.nav-title{padding:0 10px 6px;font:500 11px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:#fbf6ec9e}.nav-item{min-height:44px;padding:0 12px;border-radius:11px;display:flex;align-items:center;gap:11px;color:var(--cream);text-decoration:none;font-weight:500}.nav-item:hover{color:var(--cream);background:#fbf6ec14}.nav-item.on{background:#fbf6ec24;font-weight:600}.me{margin-top:auto;padding:12px;border-radius:14px;background:#fbf6ec14;display:flex;align-items:center;gap:10px}.avatar{width:34px;height:34px;flex:none;border-radius:17px;background:var(--accent);color:var(--brand);display:flex;align-items:center;justify-content:center;font-weight:600}.me-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.me-text strong{font-size:13px}.me-text span{font-size:12px;color:#fbf6ecb8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.main{flex:999 1 560px;min-width:0;padding:28px 32px 56px;display:flex;flex-direction:column;gap:22px;max-width:1400px}@media (max-width: 600px){.main{padding:20px 16px 48px}.side{padding:16px 12px}}.crumbs{display:flex;align-items:center;gap:4px;flex-wrap:wrap;font-size:13px;color:var(--muted)}.crumb{display:inline-flex;align-items:center;gap:4px}.crumb a{font-weight:600;text-decoration:none;padding:6px 4px}.crumb [aria-current]{color:var(--text);font-weight:600;padding:6px 4px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap}.page-title{display:flex;flex-direction:column;gap:6px;min-width:0}.page-title h1{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font:600 32px/1.1 var(--display);letter-spacing:-.02em}.actions{display:flex;gap:8px;flex-wrap:wrap}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.card.pad{padding:18px 20px;display:flex;flex-direction:column;gap:14px}.card-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.card-head.bordered{padding:14px 18px;border-bottom:1px solid var(--line-2)}.card-head h2{font-size:16px;font-weight:600}.card p{margin:0}.split{display:flex;gap:20px;flex-wrap:wrap;align-items:flex-start}.col-main{flex:999 1 520px;min-width:0;display:flex;flex-direction:column;gap:20px}.col-side{flex:1 1 300px;display:flex;flex-direction:column;gap:20px}.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.grid3{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px}.btn{min-height:44px;padding:0 16px;border-radius:var(--radius-s);border:1px solid var(--field);background:var(--surface);color:var(--text);font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;text-decoration:none;white-space:nowrap}.btn:hover{color:var(--text);background:#fafafd}.btn.primary{border-color:var(--primary);background:var(--primary);color:#fff}.btn.primary:hover{background:var(--brand);color:#fff}.btn.big{min-height:50px;font-size:15px}.btn.small{min-height:36px;padding:0 12px;font-size:13px;border-radius:10px}.btn:disabled{opacity:.6;cursor:default}.icon-btn{width:44px;height:44px;border:0;border-radius:10px;background:transparent;color:var(--text-2);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex:none}.icon-btn:hover{background:var(--primary-soft);color:var(--text)}.icon-btn.light{width:44px;height:44px;color:var(--cream)}.icon-btn.light:hover{background:#fbf6ec1f;color:var(--cream)}.icon-btn.danger{color:var(--err)}.link{border:0;background:none;padding:0;color:var(--primary);font-weight:600;cursor:pointer;text-decoration:underline}.form-actions{display:flex;gap:10px}.form-actions .btn{min-height:48px}.form-actions .grow{flex:2}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 14px;border-bottom:1px solid var(--line-2)}.filters{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;flex:0 1 600px}.filters select{height:40px;min-width:150px}.tabs{display:flex;gap:4px;flex-wrap:wrap}.tab{min-height:40px;padding:0 12px;border:0;border-radius:10px;background:transparent;color:#4a4e66;font-weight:500;display:inline-flex;align-items:center;gap:8px;cursor:pointer}.tab.on{background:var(--primary-soft);color:var(--brand);font-weight:600}.count{padding:2px 7px;border-radius:999px;background:#1b1d4a14;font-size:12px;font-weight:600}.search{position:relative;display:flex;align-items:center;flex:0 1 260px;min-width:180px;color:var(--muted)}.search svg{position:absolute;left:12px}.search input{width:100%;height:40px;padding:0 12px 0 36px}.table-wrap{overflow-x:auto}table{width:100%;min-width:820px;border-collapse:collapse}th{text-align:left;font-size:12px;font-weight:600;color:var(--muted);background:#fafafd;padding:10px 12px}th:first-child,td:first-child{padding-left:18px}th:last-child,td:last-child{padding-right:16px}td{padding:6px 12px;border-top:1px solid var(--line-2);color:var(--text-2);vertical-align:middle}tbody tr:hover{background:#f8f8fc}.row-link{min-height:48px;display:inline-flex;align-items:center;gap:12px;color:var(--text);text-decoration:none}.row-link:hover{color:var(--primary)}.row-actions{display:inline-flex;gap:4px}.empty{padding:36px 18px;text-align:center;color:var(--muted);line-height:1.5}.foot{padding:12px 18px;border-top:1px solid var(--line-2);color:var(--muted);font-size:13px}.badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font:600 12.5px/1.2 var(--font);white-space:nowrap}.badge .dot{width:7px;height:7px;border-radius:4px}.badge-active{background:var(--ok-bg);color:var(--ok)}.badge-active .dot{background:var(--ok-dot)}.badge-preparing{background:var(--soon-bg);color:var(--soon)}.badge-preparing .dot{background:var(--soon-dot)}.badge-passive{background:var(--off-bg);color:var(--off)}.badge-passive .dot{background:var(--off-dot)}.page-title h1 .badge{font-family:var(--font);letter-spacing:0}.app{font-size:13px;font-weight:600}.app-selectable{color:var(--ok)}.app-soon{color:var(--soon)}.app-hidden{color:var(--muted);font-weight:500}.pill{display:inline-flex;padding:4px 10px;border-radius:999px;font:600 12.5px/1.2 var(--font);white-space:nowrap}.pill-ready{background:var(--ok-bg);color:var(--ok)}.pill-progress{background:var(--soon-bg);color:var(--soon)}.pill-none{background:var(--off-bg);color:var(--off)}.flag{display:inline-block;flex:none;box-shadow:0 0 0 1px #14163c24;color:var(--muted);font-weight:600;text-align:center;overflow:hidden}.chips{display:flex;gap:6px;flex-wrap:wrap}.chip{padding:5px 10px;border-radius:999px;background:#eef0f8;color:var(--primary);font-size:13px;font-weight:500}.chips-block{display:flex;flex-direction:column;gap:8px}.lm-icon{width:34px;height:34px;flex:none;border-radius:10px;background:#fff3dc;color:#a46200;display:inline-flex;align-items:center;justify-content:center}.lm-icon.big{width:52px;height:52px;border-radius:15px}.radios{display:flex;flex-direction:column;gap:8px}.radio{width:100%;min-height:56px;padding:10px 12px;border-radius:12px;border:1px solid #e1e2ec;background:var(--surface);display:flex;align-items:flex-start;gap:10px;cursor:pointer;text-align:left}.radio.on{border:2px solid var(--primary);background:#f3f3fc;padding:9px 11px}.radio .ring{width:16px;height:16px;flex:none;margin-top:2px;border-radius:8px;border:2px solid #b8bacb;background:#fff}.radio.on .ring{border:5px solid var(--primary)}.radio-text{display:flex;flex-direction:column;gap:2px}.radio-text span{font-size:12.5px;color:var(--muted);line-height:1.4}.seg{display:flex;gap:6px;flex-wrap:wrap}.seg button{min-height:44px;padding:0 16px;border-radius:10px;border:1px solid var(--field);background:var(--surface);font-weight:600;cursor:pointer}.seg button.on{border-color:var(--primary);background:var(--primary);color:#fff}.tpls{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.tpl{min-height:112px;padding:10px 12px 12px;border:0;border-radius:14px;color:#fff;display:flex;flex-direction:column;justify-content:space-between;gap:6px;cursor:pointer;text-align:left;text-shadow:0 1px 4px rgba(20,10,50,.35);box-shadow:inset 0 0 0 1px #ffffff2e;opacity:.86}.tpl.on{opacity:1;box-shadow:0 0 0 3px #fff,0 0 0 5px var(--primary)}.tpl-istanbul{background:linear-gradient(160deg,#f4a06e,#b9557a 55%,#5b3a8c)}.tpl-paris{background:linear-gradient(160deg,#8fb4e6,#5c74b8 55%,#39407e)}.tpl-tokyo{background:linear-gradient(160deg,#3b4795,#5d3d8f 55%,#2a2462)}.tpl-newyork{background:linear-gradient(160deg,#f0b066,#c6687a,#3b4a7a)}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field .label{font-weight:600;font-size:13px}.field.narrow{max-width:260px}input,select,textarea{min-width:0;border:1px solid var(--field);border-radius:var(--radius-s);background:var(--surface);color:var(--text);font-size:15px}input,select{height:46px;padding:0 14px}select{padding:0 10px}textarea{padding:12px 14px;line-height:1.5;resize:vertical}input:disabled{background:#f3f3f8;color:var(--muted)}input::placeholder,textarea::placeholder{color:#8a8ea3}.field.has-error input,.field.has-error select,input[aria-invalid=true]{border-color:var(--err-line);box-shadow:0 0 0 3px #d92d201f}.error{font-size:12.5px;font-weight:500;color:#b42318}.help{font-size:12.5px;color:var(--muted)}.with-button{position:relative;display:flex}.with-button input{flex:1;padding-right:52px}.with-button .icon-btn{position:absolute;right:2px;top:3px;color:var(--muted)}.with-flag{display:flex;align-items:center;gap:10px}.with-flag .code{width:96px;flex:none;text-transform:uppercase}.check{display:flex;align-items:center;gap:10px;min-height:44px;cursor:pointer;color:var(--text-2)}.check input{width:20px;height:20px;margin:0;accent-color:var(--primary)}.check.big{align-items:flex-start}.check.big input{margin-top:3px}.checks{display:flex;gap:4px 24px;flex-wrap:wrap}.add-row{display:flex;gap:8px;flex-wrap:wrap}.add-row label{display:flex;flex:1 1 240px}.add-row input{flex:1;height:44px}.list{margin:0;padding:0;list-style:none}.list.bordered{border:1px solid var(--line-2);border-radius:14px;overflow:hidden}.list li+li,.list.bordered li{border-top:1px solid #f0f0f5}.list.bordered li:first-child{border-top:0}.list-row{width:100%;min-height:56px;padding:8px 18px;display:flex;align-items:center;gap:12px;color:var(--text);text-decoration:none}a.list-row:hover{background:#f8f8fc;color:var(--text)}.list-row.static{padding:6px 8px 6px 14px}.list-row select{height:40px;font-size:13px}.facts{margin:0;display:grid;grid-template-columns:130px minmax(0,1fr);gap:10px 12px}.facts dt{color:var(--muted)}.facts dd{margin:0;font-weight:500}.facts.grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px 20px}.facts.grid>div{display:flex;flex-direction:column;gap:3px}.facts.grid dt{font-size:12.5px}.history{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}.history li{display:flex;gap:12px;align-items:baseline}.history .when{flex:none;width:150px;font-size:12.5px;color:var(--muted-2)}.alert{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:14px;line-height:1.45}.alert svg{flex:none;margin-top:1px}.alert-warn{background:#fff4dc;color:#6b4500}.alert-error{background:var(--err-bg);color:var(--err)}.alert-info{background:var(--primary-soft);color:var(--brand)}.intro{padding:14px 18px;line-height:1.55;color:var(--text-2)}.file-box{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:12px 14px;border-radius:14px;background:#fafafd;border:1px solid var(--line-2)}.file-icon{width:40px;height:40px;flex:none;border-radius:10px;background:var(--primary-soft);color:var(--primary);display:flex;align-items:center;justify-content:center}.preview{padding:14px;border-radius:16px;background:#14163a;color:#fff;display:flex;align-items:center;gap:12px}.preview svg{color:#ffffff73;flex:none}.preview-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.preview-text strong{font-size:15px}.preview-text span{font-size:12px;color:#ffffffa8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chip-lm,.chip-soon{flex:none;padding:4px 8px;border-radius:10px;font:600 11px/1 var(--font)}.chip-lm{background:#ffc94a29;color:#ffd36b}.chip-soon{background:#ffffff1f;color:#ffffffd1}.bubble-preview{padding:14px;border-radius:18px;background:linear-gradient(170deg,#8fb4e6,#5c74b8 60%,#39407e);display:flex;flex-direction:column;align-items:flex-start;gap:10px}.bubble{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:#14142cc7;color:#fff;font-weight:600;font-size:13px}.bubble-card{width:100%;padding:12px;border-radius:14px;background:#fffffff2;display:flex;flex-direction:column;gap:8px}.bubble-row{display:flex;align-items:center;justify-content:space-between;font-size:13px;color:var(--text-2);padding-top:6px;border-top:1px solid var(--line-2)}.toast-wrap{position:fixed;left:50%;bottom:28px;transform:translate(-50%);z-index:10}.toast{padding:12px 18px;border-radius:14px;background:var(--text);color:#fff;display:flex;align-items:center;gap:10px;box-shadow:0 12px 30px #0a0a1e40;animation:toastIn .25s ease both}.toast svg{color:#7ee2a8}@keyframes toastIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){.toast{animation:none}}.card>.list .list-row.static{padding-left:18px}.fieldset{margin:0;padding:0;border:0;display:flex;flex-direction:column;gap:8px}.fieldset legend{padding:0 0 4px;font-weight:600;font-size:13px}.counter{flex:none;width:48px;align-self:center;text-align:right;font-size:12px;font-variant-numeric:tabular-nums;color:var(--muted-2)}.counter.over{color:var(--err);font-weight:600}.add-row.padded{padding:14px 18px 18px;border-top:1px solid var(--line-2)}.list-row.selected{background:#f3f3fc}.num{width:28px;height:28px;flex:none;border-radius:8px;background:var(--primary-soft);color:var(--primary);display:inline-flex;align-items:center;justify-content:center;font-weight:600;font-size:12.5px}.row-button{min-height:44px;min-width:0;padding:0;border:0;background:transparent;color:var(--text);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:2px;text-align:left;font:inherit;cursor:pointer}.pill-error{background:var(--err-bg);color:var(--err)}.card.focus{border:2px solid var(--primary)}.block-card{padding:14px;border-radius:14px;border:1px solid var(--line-2);background:#fafafd;display:flex;flex-direction:column;gap:12px}.block-card.bad{border-color:#f3b4ae}.block-head{display:flex;align-items:center;gap:6px}.block-head .inline{gap:8px}.rows{display:flex;flex-direction:column;gap:8px}.rows-head,.rows-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr) 44px;gap:8px;align-items:center}.rows-head{font-size:12px;font-weight:600;color:var(--muted)}.rows-row label{display:flex;min-width:0}.rows-row input{width:100%;min-width:0;height:44px}.btn.dashed{align-self:flex-start;min-height:40px;border-style:dashed;background:#fafafd;color:var(--primary);font-size:13px}.label-strong{font-weight:600;font-size:13px}input.strong{font-weight:600}.chip-soon.dark{align-self:flex-start;padding:4px 10px;border-radius:999px;background:var(--soon-bg);color:var(--soon);font-weight:600;font-size:12px}.intro.note{color:var(--soon);background:#fffaf0;border-top:1px solid var(--line-2);font-size:13px}.lm-icon.av{background:#fde8e1;color:#b0442a}.right-text{align-items:flex-end;justify-content:center}.grow-2{flex:1 1 200px}.grow-3{flex:2 1 220px;min-width:0}.list-row.wrap{flex-wrap:wrap;padding:10px 12px 10px 18px}.list-row.bad{background:#fff5f5}.pill-soft{background:var(--primary-soft);color:var(--primary)}.confirm{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;padding:6px 6px 6px 12px;border-radius:12px;background:var(--err-bg);color:var(--err);font-size:13px}.confirm.block{display:flex;margin:12px 18px}.btn.danger{border-color:#b42318;background:#b42318;color:#fff}.btn.danger:hover{background:#8f1d1d;color:#fff}.btn.danger-outline{color:var(--err)}.btn.wide{min-width:220px}.warn-text{color:#8a6200}.plain-list{margin:0;padding:0 0 0 20px;display:flex;flex-direction:column;gap:6px;color:var(--text-2);line-height:1.45}.grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px;align-items:start}.grid-auto{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.inline.wrap{flex-wrap:wrap}.inline.top{align-items:flex-start}.inline.bottom{align-items:flex-end}.gap-l{gap:16px 24px}.draw-pos{min-width:64px}.err-dot{width:8px;height:8px;flex:none;border-radius:4px;background:var(--err-line)}input.color{width:46px;height:46px;padding:2px;border-radius:12px;border:1px solid var(--field);background:#fff;cursor:pointer}.indent{padding-left:30px}.slider{display:grid;grid-template-columns:130px minmax(0,1fr) 70px;gap:10px;align-items:center;font-size:13.5px}.slider input{accent-color:var(--primary);min-height:44px}.slider .mono{text-align:right}.silhouette{flex:0 0 200px;margin:0;display:flex;flex-direction:column;gap:8px;align-items:center;text-align:center}.silhouette-box{position:relative;width:200px;height:240px;border-radius:16px;background:linear-gradient(180deg,#eef0fb,#dfe3f6);overflow:hidden}.chip.removable{display:inline-flex;align-items:center;gap:2px;padding:2px 2px 2px 10px}.chip.removable button{width:32px;height:32px;border:0;border-radius:16px;background:transparent;color:var(--primary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.cond-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.cond-row select{height:44px}.w-80{width:80px}.w-92{width:92px}.w-160{width:160px}.w-200{width:220px}.small-field .label{font-weight:500}.small-field select{height:42px;font-size:14px}.studio-chips{padding:14px;border-radius:16px;background:var(--brand);display:flex;gap:6px;flex-wrap:wrap}.studio-chip{padding:8px 12px;border-radius:999px;background:#fbf6ec1f;color:var(--cream);font-weight:600;font-size:13px}.studio-chip.on{background:var(--cream);color:var(--brand)}.part-preview{position:relative;width:100%;aspect-ratio:1 / 1;border-radius:16px;background:linear-gradient(180deg,#eef0fb,#dfe3f6);overflow:hidden}.vec-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.vec-row>.label-strong{width:120px}.vec-row input{height:44px}.prim-editor{padding:18px;border-top:2px solid var(--primary);background:#fbfbfe;display:flex;flex-direction:column;gap:14px}.prim-editor h3{margin:0;font-size:15px}textarea.code{width:100%;box-sizing:border-box;font-size:12.5px;line-height:1.5}.form-actions.end{justify-content:flex-end;flex-wrap:wrap}
