:root{--ink:#101014;--muted:#6b6b76;--line:#ebebf0;--bg:#f6f6f9;--surface:#fff;--soft:#f1f0fb;--accent:#6d4aff;--accent-2:#b14bff;--accent-ink:#4b2fd9;--grad:linear-gradient(135deg, #6d4aff 0%, #b14bff 55%, #ff6fb1 100%);--danger:#c62f3b;--ok:#12a150;--radius:14px;--shadow:0 1px 2px #1010140a, 0 4px 16px #1010140d;--shadow-lg:0 12px 40px #5032c824;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:var(--bg);min-height:100vh;margin:0}body.public{background:radial-gradient(1200px 500px at 85% -10%, #b14bff24, transparent 60%), radial-gradient(900px 500px at -10% 10%, #6d4aff1f, transparent 60%), var(--bg);flex-direction:column;display:flex}h1{letter-spacing:-.025em;margin:0 0 .75rem;font-size:1.75rem;line-height:1.2}h2{letter-spacing:-.01em;margin:1.5rem 0 .75rem;font-size:1.1rem}a{color:var(--accent-ink)}.app-shell{grid-template-columns:248px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{background:var(--surface);border-right:1px solid var(--line);flex-direction:column;gap:1rem;height:100vh;padding:1.1rem .9rem;display:flex;position:sticky;top:0}.brand{letter-spacing:-.02em;color:var(--ink);align-items:center;gap:.55rem;padding:.2rem .4rem;font-size:1.05rem;font-weight:800;text-decoration:none;display:inline-flex}.logo{background:var(--grad);color:#fff;border-radius:9px;place-items:center;width:30px;height:30px;font-size:.95rem;font-weight:800;display:grid}.create-cta{background:var(--grad);color:#fff;box-shadow:var(--shadow-lg);border-radius:12px;justify-content:center;align-items:center;gap:.45rem;padding:.7rem 1rem;font-weight:600;text-decoration:none;transition:transform .15s,filter .15s;display:flex}.create-cta:hover{filter:brightness(1.05);transform:translateY(-1px)}.create-cta svg,.side-link svg,.icon-btn svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round}.side-nav{gap:.15rem;display:grid}.side-label{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:1rem .65rem .3rem;font-size:.7rem;font-weight:600}.side-link{color:#3a3a44;border-radius:10px;align-items:center;gap:.7rem;padding:.6rem .7rem;font-size:.94rem;font-weight:500;text-decoration:none;transition:background .12s,color .12s;display:flex}.side-link:hover{background:var(--bg);color:var(--ink)}.side-link.active{background:var(--soft);color:var(--accent-ink);font-weight:600}.side-link .short{display:none}.side-foot{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:.5rem;margin-top:auto;padding:.6rem .5rem 0;display:flex}.me{align-items:center;gap:.5rem;min-width:0;display:flex}.avatar-dot{background:var(--soft);width:30px;height:30px;color:var(--accent-ink);border-radius:50%;flex:none;place-items:center;font-size:.85rem;font-weight:700;display:grid}.me-mail{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;overflow:hidden}.icon-btn{width:34px;height:34px;color:var(--muted);border:1px solid var(--line);background:0 0;border-radius:9px;place-items:center;padding:0;display:grid}.icon-btn:hover{color:var(--ink);background:var(--bg)}.install-tip{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:16px;align-items:center;gap:.75rem;margin:1rem 2.25rem 0;padding:.7rem .9rem;display:flex}.install-tip[hidden]{display:none}.install-tip img{border-radius:10px;flex:none}.it-text{flex:1;gap:.1rem;min-width:0;font-size:.88rem;display:grid}.it-text span{color:var(--muted)}.install-tip button.grad{padding:.5rem .9rem}.it-close{color:var(--muted);background:0 0;padding:0 .3rem;font-size:1.3rem}.it-close:hover{filter:none;color:var(--ink)}.content{flex-direction:column;min-width:0;display:flex}.content main{flex:1;width:100%;max-width:1180px;margin:0 auto;padding:2rem 2.25rem}footer{color:var(--muted);padding:1rem 2.25rem 1.5rem}.topbar{justify-content:space-between;align-items:center;width:100%;max-width:1180px;margin:0 auto;padding:1rem 1.5rem;display:flex}.topbar nav{align-items:center;gap:.6rem;display:flex}.topbar nav .button,.ghost{white-space:nowrap}.ghost{color:var(--ink);border-radius:10px;padding:.55rem .9rem;font-weight:500;text-decoration:none}.ghost:hover{background:#1010140d}body.public main{flex:1;width:100%;max-width:1180px;margin:0 auto;padding:2rem 1.5rem}body.public footer{width:100%;max-width:1180px;margin:0 auto;padding:1rem 1.5rem 1.5rem}form.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);max-width:460px;box-shadow:var(--shadow);gap:1rem;padding:1.5rem;display:grid}form.card>*,label{min-width:0}select{text-overflow:ellipsis;width:100%;max-width:100%}label{color:#2b2b33;gap:.35rem;font-size:.9rem;font-weight:500;display:grid}input,select,textarea{font:inherit;background:var(--surface);color:var(--ink);border:1px solid #dcdce4;border-radius:10px;padding:.65rem .8rem;font-weight:400;transition:border-color .12s,box-shadow .12s}input:focus,select:focus,textarea:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #6d4aff26}input[type=checkbox],input[type=radio]{accent-color:var(--accent);width:1.05rem;height:1.05rem;box-shadow:none;padding:0}textarea{resize:vertical;min-height:5rem}button,.button{font:inherit;cursor:pointer;background:var(--accent);color:#fff;border:0;border-radius:10px;justify-content:center;align-items:center;gap:.4rem;padding:.65rem 1.1rem;font-weight:600;text-decoration:none;transition:filter .12s,transform .12s,background .12s;display:inline-flex}button:hover,.button:hover{filter:brightness(1.08)}button:active,.button:active{transform:translateY(1px)}.button.grad,button.grad{background:var(--grad);box-shadow:var(--shadow-lg)}button.secondary,.button.secondary{background:var(--surface);color:var(--ink);border:1px solid #dcdce4}button.secondary:hover,.button.secondary:hover{filter:none;background:var(--bg)}button.link{color:var(--accent-ink);background:0 0;padding:0;font-weight:500}button:disabled{opacity:.55;cursor:not-allowed}.error{color:var(--danger);background:#fdeef0;border:1px solid #f7d2d7;border-radius:10px;padding:.6rem .85rem}.notice{color:var(--muted)}p.notice[role=status]{color:#135c36;background:#e8f7ee;border:1px solid #c9ebd6;border-radius:10px;padding:.6rem .85rem}.check{align-items:flex-start;gap:.55rem;font-weight:400;display:flex}.grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:1.1rem;display:grid}.tile{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);align-content:start;gap:.55rem;padding:.7rem;transition:transform .15s,box-shadow .15s;display:grid}.tile:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.tile img,.tile video{aspect-ratio:9/16;object-fit:cover;background:linear-gradient(160deg,#ecebf7,#f6eefc);border-radius:10px;width:100%}.badge{color:#3a3a44;background:#efeff4;border-radius:999px;align-items:center;padding:.15rem .55rem;font-size:.75rem;font-weight:600;display:inline-flex}.badge.ok{color:#0f7a3d;background:#e3f6ea}.badge.warn{color:#8a5a00;background:#fff3d9}.badge.bad{color:#a3202d;background:#fde7ea}.row{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.muted{color:var(--muted);font-size:.9rem}table{border-collapse:collapse;background:var(--surface);border-radius:var(--radius);width:100%;overflow:hidden}th,td{text-align:left;border-bottom:1px solid var(--line);padding:.65rem .75rem;font-size:.92rem}th{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);background:#fafafc;font-size:.75rem;font-weight:600}.cards{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;display:grid}.card-link{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);color:var(--ink);border-radius:18px;gap:.4rem;padding:1.2rem;text-decoration:none;transition:transform .15s,box-shadow .15s;display:grid;position:relative;overflow:hidden}.card-link:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.card-link strong{font-size:1.02rem}.card-link .art{color:#fff;border-radius:12px;place-items:center;height:110px;margin-bottom:.5rem;font-size:2rem;display:grid}.art.a1{background:linear-gradient(135deg,#6d4aff,#9b7bff)}.art.a2{background:linear-gradient(135deg,#b14bff,#ff6fb1)}.art.a3{background:linear-gradient(135deg,#1fb6ff,#6d4aff)}@media (width<=860px){.app-shell{grid-template-columns:1fr}.sidebar{z-index:20;height:auto;padding:.35rem .5rem calc(.35rem + env(safe-area-inset-bottom));border-right:0;border-top:1px solid var(--line);flex-direction:row;position:fixed;inset:auto 0 0;box-shadow:0 -6px 24px #1010140f}.sidebar .brand,.sidebar .create-cta,.side-label,.me{display:none}.side-nav{flex:1;grid-auto-columns:1fr;grid-auto-flow:column}.side-link{text-align:center;flex-direction:column;gap:.2rem;padding:.45rem .2rem;font-size:.68rem}.side-link .long{display:none}.side-link .short{display:inline}.cards{grid-template-columns:1fr;gap:.6rem}.card-link{grid-template-columns:56px 1fr;align-items:center;gap:.1rem .85rem;padding:.8rem}.card-link .art{grid-row:span 2;width:56px;height:56px;margin:0;font-size:1.4rem}.side-foot{border:0;margin:0;padding:0}.content main{padding:1.25rem .9rem 6rem}.install-tip{margin:.75rem .9rem 0}footer{padding:0 .9rem 6rem}body.public footer{padding-bottom:1.5rem}form.card{max-width:100%!important}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}input,select,textarea,button{font-size:16px}}
