:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--accent:#4f46e5;--accent-dark:#3730a3;--accent-soft:#eef0fd;--text:#1f2328;--muted:#6b7280;--border:#e6e6e9;--surface:#fff;--bg:#f7f7f8;--radius-lg:14px;--radius-md:10px;--radius-sm:7px;--shadow-sm:0 1px 2px #14141e0d;--shadow-md:0 6px 20px #14141e14;font-family:Noto Sans JP,Hiragino Sans,Yu Gothic,system-ui,-apple-system,sans-serif}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;line-height:1.6}button,input,select{font-family:inherit}button:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.page{max-width:480px;margin:0 auto;padding:32px 18px 56px}.page-center{text-align:center;justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.page-header{margin-bottom:24px}.page-header h1{letter-spacing:.01em;margin:0 0 4px;font-size:1.3rem}.page-header p{color:var(--muted);margin:0;font-size:.92rem}.hint{color:var(--muted);margin-bottom:16px;font-size:.88rem;line-height:1.7}.empty{color:var(--muted);text-align:center;padding:20px 0;line-height:1.7}.slot-group{margin-bottom:22px}.slot-group h2{color:var(--accent);border-bottom:2px solid var(--accent);margin:0 0 12px;padding-bottom:5px;font-size:.95rem;display:inline-block}.slot-list{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.slot-button{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--text);cursor:pointer;box-shadow:var(--shadow-sm);padding:14px 8px;font-size:1rem;font-weight:500;transition:transform .12s,border-color .12s,box-shadow .12s}.slot-button:hover{border-color:var(--accent);box-shadow:var(--shadow-md)}.slot-button:active{transform:scale(.97)}.confirm-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-bottom:18px;padding:22px}.confirm-date{letter-spacing:.01em;margin:0 0 8px;font-size:1.5rem;font-weight:700}.confirm-note{color:var(--muted);margin:0;font-size:.92rem}.button-row{gap:10px;display:flex}.primary-button,.secondary-button{border-radius:var(--radius-md);cursor:pointer;border:1px solid #0000;flex:1;padding:13px;font-size:1rem;font-weight:600;transition:background .12s,border-color .12s,opacity .12s}.primary-button{background:var(--accent);color:#fff}.primary-button:hover:not(:disabled){background:var(--accent-dark)}.primary-button:disabled{opacity:.55;cursor:not-allowed}.secondary-button{background:var(--surface);border-color:var(--border);color:var(--text)}.secondary-button:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.secondary-button:disabled{opacity:.55;cursor:not-allowed}.error-text{color:var(--accent);margin:4px 0 0;font-size:.88rem}.text-button{width:100%;color:var(--muted);cursor:pointer;background:0 0;border:none;padding:8px;font-size:.86rem;text-decoration:underline}.text-button:hover:not(:disabled){color:var(--accent)}.text-button:disabled{opacity:.55;cursor:not-allowed}.modal-overlay{z-index:100;background:#14141e73;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-card{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);width:100%;max-width:360px;padding:24px}.modal-card h2{margin:0 0 10px;font-size:1.05rem}.modal-card p{color:var(--text);margin:0 0 20px;font-size:.92rem;line-height:1.7}
