:root{--red: #E30613;--red-dk: #C00510;--ink: #0F0F0F;--paper: #F1EFEA;--paper2: #E8E5DE;--white: #FFFFFF;--line: #E3DFD6;--line2: #EEEBE4;--soft: #DEDAD0;--mute: #6B6862;--mute2: #9A968C;--green: #1F7A4D;--amber: #8F5A12;--sans: "Helvetica Neue", Helvetica, -apple-system, BlinkMacSystemFont, Arial, sans-serif;--mono: "JetBrains Mono", ui-monospace, Menlo, monospace;--r: 12px;--r-sm: 8px;--shadow: 0 1px 2px rgba(15, 15, 15, .04), 0 4px 16px rgba(15, 15, 15, .04);--ease: cubic-bezier(.23, 1, .32, 1)}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.4;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--red);outline-offset:2px}a{color:inherit}.mono{font-family:var(--mono);text-transform:uppercase;letter-spacing:.04em;font-size:10.5px}.muted{color:var(--mute)}.top{height:64px;display:flex;align-items:center;gap:14px;padding:0 28px;border-bottom:1px solid var(--line);background:#f1efead1;backdrop-filter:saturate(180%) blur(16px);-webkit-backdrop-filter:saturate(180%) blur(16px);position:sticky;top:0;z-index:5}.logo{font-weight:700;font-size:24px;letter-spacing:-.045em;line-height:1}.logo i{color:var(--red);font-style:normal}.top .mono{color:var(--mute)}.top .who{margin-left:auto;display:flex;align-items:center;gap:12px;font-size:14px}.shell{display:flex;min-height:calc(100% - 64px)}.nav{flex:0 0 228px;border-right:1px solid var(--line);padding:20px 12px;display:flex;flex-direction:column;gap:2px;position:sticky;top:64px;height:calc(100vh - 64px);overflow-y:auto}.nav button{all:unset;box-sizing:border-box;display:flex;justify-content:space-between;align-items:center;padding:9px 14px;font-weight:500;font-size:15px;cursor:pointer;border-radius:var(--r-sm);transition:background .15s var(--ease);position:relative}.nav button:hover:not(:disabled){background:var(--paper2)}.nav button[aria-current=page]{background:var(--white);font-weight:700;box-shadow:var(--shadow)}.nav button[aria-current=page]:before{content:"";position:absolute;left:-12px;top:50%;width:3px;height:18px;margin-top:-9px;background:var(--red);border-radius:0 3px 3px 0}.nav button:disabled{color:var(--mute2);cursor:default}.nav .soon{font-family:var(--mono);font-size:9px;color:var(--mute2);letter-spacing:.04em}.nav .foot{margin-top:auto;padding:20px 14px 0;color:var(--mute2)!important}.main{flex:1 1 auto;min-width:0;padding:32px 40px 80px;max-width:1480px}.kicker{font-family:var(--mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--mute)}h1{margin:6px 0 0;font-size:40px;font-weight:700;letter-spacing:-.035em;line-height:1.05}h2{margin:0;font-size:22px;font-weight:700;letter-spacing:-.02em}h3{margin:0;font-size:16px;font-weight:700;letter-spacing:-.01em}.head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:24px}.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.btn{min-height:38px;padding:0 16px;border:0;border-radius:999px;background:var(--paper2);font-weight:600;font-size:14px;letter-spacing:-.005em;transition:transform .12s var(--ease),background .15s var(--ease),box-shadow .15s var(--ease);white-space:nowrap}.btn:hover:not(:disabled){background:var(--soft)}.btn:active:not(:disabled){transform:scale(.97)}.btn.red{background:var(--red);color:var(--white)}.btn.red:hover:not(:disabled){background:var(--red-dk)}.btn.dark{background:var(--ink);color:var(--white)}.btn.dark:hover:not(:disabled){background:#2a2a2a}.btn.small{min-height:30px;padding:0 12px;font-size:13px}.btn.ghost{background:transparent;color:var(--mute);text-decoration:underline;text-underline-offset:3px}.btn:disabled{opacity:.45;cursor:default}.link{all:unset;cursor:pointer;text-decoration:underline;text-underline-offset:3px;font-weight:600}label.f{display:flex;flex-direction:column;gap:6px;font-size:13px}label.f>span{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--mute)}input.t,select.t,textarea.t{min-height:42px;border:1px solid var(--soft);background:var(--white);padding:8px 12px;font-size:15px;border-radius:var(--r-sm);width:100%;transition:border-color .15s,box-shadow .15s}input.t:hover,select.t:hover,textarea.t:hover{border-color:#cbc6bb}input.t:focus,select.t:focus,textarea.t:focus{outline:none;border-color:var(--ink);box-shadow:0 0 0 3px #0f0f0f14}input.t::placeholder{color:var(--mute2)}textarea.t{min-height:80px;resize:vertical}.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px}.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 18px}.span2{grid-column:span 2}.check{display:flex;gap:10px;align-items:center;font-size:14px}input[type=checkbox]{width:18px;height:18px;accent-color:var(--red)}.panel,.card{border:1px solid var(--line);background:var(--white);border-radius:var(--r);box-shadow:var(--shadow)}.panel{overflow:hidden}.panel>.ph{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;border-bottom:1px solid var(--line2);flex-wrap:wrap}.panel>.pb{padding:18px}.split{display:flex;gap:28px;align-items:flex-start}.list{flex:0 0 320px;display:flex;flex-direction:column;gap:2px}.list button{all:unset;box-sizing:border-box;width:100%;display:flex;justify-content:space-between;gap:8px;align-items:center;padding:10px 14px;border-radius:var(--r-sm);cursor:pointer;transition:background .15s var(--ease)}.list button:hover{background:var(--paper2)}.list button[aria-pressed=true]{background:var(--white);box-shadow:var(--shadow)}.list .nm{font-weight:600;font-size:15px}.list .mono{color:var(--mute2)}.detail{flex:1 1 auto;min-width:0}.tabs{display:inline-flex;gap:2px;padding:3px;background:var(--paper2);border-radius:10px;margin:16px 0 20px;flex-wrap:wrap}.tabs button{all:unset;cursor:pointer;padding:7px 14px;font-weight:600;font-size:13.5px;border-radius:8px;color:var(--mute);transition:background .15s var(--ease),color .15s}.tabs button:hover{color:var(--ink)}.tabs button[aria-pressed=true]{background:var(--white);color:var(--ink);box-shadow:0 1px 3px #0f0f0f1a}table.tb{width:100%;border-collapse:collapse;font-size:14px}table.tb th{text-align:left;font-family:var(--mono);font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:var(--mute);padding:10px 14px;border-bottom:1px solid var(--line);background:#fbfaf8}table.tb td{padding:10px 14px;border-bottom:1px solid var(--line2);vertical-align:middle}table.tb tr:last-child td{border-bottom:0}table.tb tbody tr{transition:background .12s}table.tb tbody tr:hover td{background:#fbfaf8}table.tb tr.sel td{background:#fdf0f0}table.tb input.t,table.tb select.t{min-height:34px;padding:4px 8px;font-size:14px}.tag{font-family:var(--mono);font-size:9.5px;font-weight:500;letter-spacing:.04em;padding:3px 8px;border-radius:999px;background:var(--ink);color:var(--white);display:inline-block}.tag.red{background:var(--red)}.tag.green{background:var(--green)}.tag.grey{background:var(--paper2);color:var(--ink)}.empty{padding:40px 24px;text-align:center;color:var(--mute);border:1px dashed var(--soft);border-radius:var(--r)}.plan{position:relative;background:var(--paper);border-radius:var(--r-sm);overflow:hidden;-webkit-user-select:none;user-select:none}.plan img{display:block;width:100%;height:auto}.plan.placing{cursor:crosshair;box-shadow:0 0 0 2px var(--red)}.pin{position:absolute;transform:translate(-50%,-50%);min-width:26px;height:26px;padding:0 5px;border-radius:13px;display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:10px;font-weight:700;color:var(--white);border:2px solid var(--white);box-shadow:0 1px 4px #0000004d}.pin.ext{background:var(--red)}.pin.door{background:var(--ink)}.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%);background:var(--ink);color:var(--white);padding:12px 20px;border-radius:999px;font-weight:600;font-size:14px;z-index:50;box-shadow:0 8px 24px #0000002e;animation:rise .22s var(--ease)}.toast.err{background:var(--red-dk)}@keyframes rise{0%{transform:translate(-50%,10px);opacity:0}to{transform:translate(-50%);opacity:1}}.veil{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f0f0f52;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:flex-start;justify-content:center;padding:64px 20px;z-index:40;overflow:auto;animation:fade .16s ease-out}.modal{width:100%;max-width:720px;background:var(--paper);border-radius:16px;padding:24px;display:flex;flex-direction:column;gap:16px;box-shadow:0 24px 64px #0003;animation:pop .2s var(--ease)}@keyframes pop{0%{transform:scale(.97) translateY(6px);opacity:0}to{transform:none;opacity:1}}@keyframes fade{0%{opacity:0}to{opacity:1}}.login{min-height:100%;display:flex;align-items:center;justify-content:center;padding:24px}.login .box{width:100%;max-width:400px;display:flex;flex-direction:column;gap:16px}.err{color:var(--red-dk);font-weight:600;font-size:14px}.note{border-radius:var(--r-sm);background:var(--white);border:1px solid var(--line);border-left:3px solid var(--red);padding:12px 16px;font-size:14px;line-height:1.45}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
