:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f5f7fb;--card:#fff;--text:#172033;--muted:#697386;--line:#dfe4ec;--dark:#111827;--accent:#335cff}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans JP,sans-serif}body{min-height:100vh}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}.app-shell{background:var(--bg);max-width:720px;min-height:100vh;margin:0 auto;padding-bottom:84px}.topbar{z-index:20;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);background:#f5f7fbf2;justify-content:space-between;align-items:center;height:58px;padding:0 18px;display:flex;position:sticky;top:0}.brand{letter-spacing:-.03em;font-weight:800}.gate,.chip{color:#2946ae;background:#e8edff;border-radius:999px;padding:5px 8px;font-size:12px}.content{padding:22px 16px 28px}h1{letter-spacing:-.035em;margin:4px 0 12px;font-size:28px;line-height:1.15}h2{margin:0 0 14px;font-size:18px}.eyebrow{color:#53617a;text-transform:uppercase;letter-spacing:.09em;margin:0;font-size:11px;font-weight:800}.lead{color:var(--muted);margin:0 0 22px;line-height:1.7}.lead.compact{margin-bottom:16px;font-size:14px}.bottom-nav{z-index:30;border-top:1px solid var(--line);width:min(720px,100%);padding:8px 6px max(8px,env(safe-area-inset-bottom));background:#fffffff7;grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.nav-item{text-align:center;color:#68738a;border-radius:12px;padding:10px 2px;font-size:12px;font-weight:700}.nav-item.active{color:#1f3fb4;background:#eef1ff}.home-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.home-card{background:var(--card);border:1px solid var(--line);border-radius:18px;flex-direction:column;justify-content:space-between;min-height:104px;padding:16px;display:flex;box-shadow:0 6px 20px #141e3c0a}.home-card strong{font-size:16px}.home-card span{color:var(--muted);font-size:12px}.home-card.featured{background:var(--dark);color:#fff;grid-column:1/-1}.home-card.featured span{color:#c9d0dc}.notice,.panel,.empty-state{background:var(--card);border:1px solid var(--line);border-radius:18px;margin-top:18px;padding:17px}.notice p,.empty-state p{color:var(--muted);margin:7px 0 0;font-size:13px;line-height:1.65}.notice.warning{background:#fffaf0;border-color:#f0d89f}.page-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.primary{background:var(--dark);color:#fff;border:0;border-radius:14px;padding:13px 18px;font-weight:800}.primary.small{padding:10px 14px}.library-list,.slot-list{gap:10px;display:grid}.library-card,.prompt-card,.slot-card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:14px}.library-card{grid-template-columns:76px 1fr;align-items:center;gap:14px;display:grid}.library-card p,.prompt-card p{color:var(--muted);margin:5px 0 10px;font-size:13px;line-height:1.55}.image-placeholder{color:#fff;background:linear-gradient(135deg,#8fa4ff,#415bd1);border-radius:14px;place-items:center;width:76px;height:76px;font-size:10px;font-weight:900;display:grid}.image-placeholder.p2{background:linear-gradient(135deg,#81c8aa,#277d69)}.card-title{justify-content:space-between;align-items:center;gap:10px;display:flex}.button-row{gap:8px;display:flex}.button-row button{border:1px solid var(--line);background:#f9fafc;border-radius:11px;flex:1;padding:9px}.button-row .primary{background:var(--dark);color:#fff;border:0}.mock-note{color:#7a8497;font-size:12px;line-height:1.6}.summary-row{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px;display:grid}.summary-row>div{background:var(--card);border:1px solid var(--line);border-radius:15px;flex-direction:column;padding:13px;display:flex}.summary-row strong{font-size:19px}.summary-row span{color:var(--muted);margin-top:3px;font-size:11px}.slot-card{gap:9px;display:grid}.slot-number{color:#485774;font-size:12px;font-weight:900}.picker{border:1px solid var(--line);text-align:left;background:#fafbfe;border-radius:12px;justify-content:space-between;gap:12px;padding:10px 12px;display:flex}.picker span{color:var(--muted);font-size:12px}.picker strong{text-align:right;font-size:12px}.duration{color:var(--muted);justify-content:space-between;align-items:center;font-size:12px;display:flex}.duration input{border:1px solid var(--line);text-align:right;border-radius:10px;width:82px;padding:8px}.sticky-action{border:1px solid var(--line);background:#f5f7fbf5;border-radius:17px;margin-top:14px;padding:12px;position:sticky;bottom:75px;box-shadow:0 8px 28px #141e3c1f}.sticky-action p{color:var(--muted);margin:0 0 9px;font-size:11px;line-height:1.5}.sticky-action .primary{width:100%}.monitor-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.monitor-grid>div{background:#f7f8fb;border-radius:12px;flex-direction:column;padding:11px;display:flex}.monitor-grid span{color:var(--muted);font-size:11px}.monitor-grid strong{margin-top:4px;font-size:17px}.empty-state{text-align:center;padding:36px 18px}.auth-screen{background:var(--bg);place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{background:var(--card);border:1px solid var(--line);border-radius:20px;width:min(430px,100%);padding:22px;box-shadow:0 16px 40px #141e3c14}.auth-card .primary{width:100%;margin-top:14px}.session-strip{z-index:50;color:#fff;background:#111827eb;border-radius:999px;align-items:center;gap:8px;padding:6px 8px;font-size:10px;display:flex;position:fixed;top:62px;right:max(10px,50vw - 350px);box-shadow:0 5px 18px #141e3c1f}.session-strip button{color:#111827;background:#fff;border:0;border-radius:999px;padding:4px 7px;font-size:10px}.form-stack{gap:12px;margin-bottom:16px;display:grid}.form-field,.select-field{color:var(--muted);gap:6px;font-size:12px;display:grid}.form-field input,.form-field textarea,.select-field select{border:1px solid var(--line);width:100%;color:var(--text);background:#fff;border-radius:12px;padding:11px 12px}.form-field textarea{resize:vertical;min-height:140px;line-height:1.55}.form-message{color:#2946ae;background:#eef1ff;border-radius:12px;margin:12px 0;padding:10px 12px;font-size:12px;line-height:1.55}.select-field{grid-template-columns:58px 1fr;align-items:center}.select-field select{min-width:0}.slot-save{border:1px solid var(--line);color:#4b5563;background:#f9fafc;border-radius:10px;padding:8px 10px;font-size:12px}@media (min-width:640px){.content{padding-left:28px;padding-right:28px}}
