:root{--bg:#f0ebe3;--bg-end:#e4ddd2;--surface:#fff;--border:#e0d6c9;--border-strong:#cec1af;--text:#1c1915;--text-sub:#5a5145;--text-muted:#8c8175;--accent:#c25930;--accent-hover:#d46a42;--accent-deep:#a04525;--accent-soft:#c2593012;--accent-border:#c2593047;--success:#18845a;--success-soft:#18845a14;--error:#c23838;--error-soft:#c238380f;--shadow-sm:0 1px 3px #140e060a;--shadow:0 4px 24px #140e0612,0 1px 3px #140e060a;--shadow-lg:0 12px 48px #140e061a,0 2px 6px #140e060a;--radius:20px;--radius-md:14px;--radius-sm:10px;--ease:cubic-bezier(.22,1,.36,1)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{min-height:100dvh;color:var(--text);background:linear-gradient(168deg,var(--bg)0%,var(--bg-end)100%);background-attachment:fixed;margin:0;font-family:Noto Sans JP,sans-serif;font-size:15px}fieldset{border:0;margin:0;padding:0}legend{padding:0}input,textarea,select,button{font:inherit}[hidden]{display:none!important}.progress-bar{background:var(--border);z-index:900;height:3px;position:fixed;top:0;left:0;right:0}.progress-fill{background:linear-gradient(90deg,var(--accent),var(--accent-hover));width:0;height:100%;transition:width .5s var(--ease);border-radius:0 3px 3px 0}.wizard{background:var(--surface);border-radius:var(--radius);max-width:640px;box-shadow:var(--shadow-lg);flex-direction:column;min-height:calc(100dvh - 48px);margin:24px auto;display:flex;overflow:hidden}.wizard-header{text-align:center;padding:28px 24px 0}.brand{color:var(--accent);letter-spacing:.18em;text-transform:none;margin:0 0 4px;font-size:.68rem;font-weight:700}.wizard-header h1{letter-spacing:-.02em;margin:0;font-family:Fraunces,serif;font-size:1.8rem;font-weight:700;line-height:1.15}.step-nav{padding:20px 24px 0}.step-list{justify-content:center;align-items:flex-start;gap:0;margin:0;padding:0;list-style:none;display:flex;position:relative}.step-item{z-index:1;flex-direction:column;flex:1;align-items:center;gap:6px;display:flex;position:relative}.step-item:not(:last-child):after{content:"";background:var(--border);z-index:0;height:2px;transition:background .3s;position:absolute;top:15px;left:calc(50% + 18px);right:calc(18px - 50%)}.step-item.is-done:not(:last-child):after{background:var(--accent)}.dot{background:var(--surface);border:2px solid var(--border);width:30px;height:30px;color:var(--text-muted);transition:all .3s var(--ease);z-index:2;border-radius:50%;justify-content:center;align-items:center;font-size:.78rem;font-weight:700;display:flex;position:relative}.step-item.is-current .dot{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 2px 12px #c2593040}.step-item.is-done .dot{background:var(--accent);border-color:var(--accent);color:#fff}.step-item.is-done .dot span{font-size:0}.step-item.is-done .dot:after{content:"✓";font-size:.82rem}.dot-label{color:var(--text-muted);white-space:nowrap;font-size:.68rem;font-weight:600;transition:color .3s}.step-item.is-current .dot-label{color:var(--accent);font-weight:700}.step-item.is-done .dot-label{color:var(--text-sub)}.step{display:none}.step.is-active{display:block}.step.enter-forward{animation:slideInRight .42s var(--ease)both}.step.enter-backward{animation:slideInLeft .42s var(--ease)both}@keyframes slideInRight{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-40px)}to{opacity:1;transform:translate(0)}}@media (prefers-reduced-motion:reduce){.step.enter-forward,.step.enter-backward{animation:none}.progress-fill{transition:none}}.step-inner{flex:1;padding:28px 24px 32px}.step-heading{margin-bottom:28px;position:relative}.step-heading:before{content:attr(data-num);color:var(--accent);opacity:.06;letter-spacing:-.04em;pointer-events:none;margin-bottom:-18px;font-family:Fraunces,serif;font-size:5rem;font-weight:400;line-height:1;display:block}.step-heading h2{margin:0;font-size:1.25rem;font-weight:700;line-height:1.4}.step-heading p{color:var(--text-muted);margin:6px 0 0;font-size:.88rem;line-height:1.7}.fields,.field-row{gap:18px;display:grid}.field{gap:8px;display:grid}.field-label{font-size:.88rem;font-weight:700;line-height:1.5}legend.field-label{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.field-label em{color:var(--accent-deep);background:linear-gradient(135deg,#fce4d8,#f6cfc0);border-radius:999px;align-items:center;margin-left:6px;padding:1px 7px 2px;font-size:.68rem;font-style:normal;font-weight:700;display:inline-flex}legend.field-label em{margin-left:0}input:not([type=checkbox]):not([type=radio]),textarea,select{border:1.5px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);width:100%;color:var(--text);appearance:none;padding:12px 14px;transition:border-color .2s,box-shadow .2s,background .2s}select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238c8175' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:36px}textarea{resize:vertical;min-height:90px}input::placeholder,textarea::placeholder{color:#a09888}input:not([type=checkbox]):not([type=radio]):hover,textarea:hover,select:hover{border-color:#bfb3a2}input:not([type=checkbox]):not([type=radio]):focus,textarea:focus,select:focus{border-color:var(--accent);background:#fffdfb;outline:none;box-shadow:0 0 0 3px #c259301a}.field-hint{color:var(--text-muted);font-size:.78rem;line-height:1.65}p.field-hint{margin:0}.notice-box{border:1px solid color-mix(in srgb,var(--accent)18%,var(--border));background:color-mix(in srgb,var(--accent-soft)70%,white);color:var(--text);border-radius:14px;gap:6px;margin:12px 0 0;padding:12px 14px;font-size:.84rem;line-height:1.6;display:grid}.notice-box p{margin:0}.validation-target{scroll-margin-top:120px}.inline-error{color:var(--error);margin-top:8px;font-size:.78rem;font-weight:700;line-height:1.6;display:block}.field.is-error-target input:not([type=checkbox]):not([type=radio]),.field.is-error-target textarea,.field.is-error-target select{border-color:var(--error);box-shadow:0 0 0 3px var(--error-soft);background:#fff8f8}.choice-group.is-error-target .choice-grid,.choice-group.is-error-target .stacked-choices,.field.is-error-target .check-grid{border:1.5px solid var(--error);border-radius:var(--radius-sm);background:#fff8f8;padding:10px}.choice-group.is-error-target .choice-card,.choice-group.is-error-target .stacked-choice,.field.is-error-target .check-chip{border-color:color-mix(in srgb,var(--error)70%,white);background:#fff4f4}.expandable-section.is-error-target{border-color:var(--error);box-shadow:0 0 0 3px var(--error-soft)}.expandable-section.is-error-target .expandable-trigger{background:#fff8f8}.expandable-section.is-error-target .expandable-check{border-color:color-mix(in srgb,var(--error)70%,white);background:#fff4f4}.panel.is-error-target{border:1.5px solid var(--error);background:#fff8f8;border-radius:18px;padding:14px}.lookup-hint.is-success{color:var(--success)}.lookup-hint.is-muted{color:var(--text-muted)}.is-invalid{border-color:var(--error)!important;box-shadow:0 0 0 3px var(--error-soft)!important}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-4px)}40%{transform:translate(4px)}60%{transform:translate(-3px)}80%{transform:translate(2px)}}.is-shake{animation:.38s shake}.zip-row,.phone-row{align-items:center;gap:8px;display:flex}.zip-row{flex-wrap:wrap}.zip-row input,.phone-row input{flex:1;min-width:0}.sep{color:var(--text-muted);flex-shrink:0}.panel-section+.panel-section{margin-top:18px}.panel-section,.remarks-area{border:1px solid color-mix(in srgb,var(--border)88%,white);box-shadow:var(--shadow-sm);background:linear-gradient(#fffdfb 0%,#faf7f2 100%);border-radius:18px;padding:18px 16px}.panel[data-panel=profile-change]{gap:14px;display:grid}.panel-section h3{align-items:center;gap:10px;margin:0 0 16px;font-size:.95rem;font-weight:700;display:flex}.panel-section h3:before{content:"";background:linear-gradient(180deg,var(--accent),color-mix(in srgb,var(--accent)65%,white));border-radius:999px;flex-shrink:0;width:4px;height:1.05em}.panel-section>.field-hint{margin-top:-2px}.panel-section>.field-hint+.notice-box,.panel-section>.field-hint+.choice-group,.panel-section>.notice-box+.choice-group,.panel-section>.choice-group+.field,.panel-section>.choice-group+.fields,.panel-section>.choice-group+.field-row,.panel-section>.check-grid+.field,.panel-section>.stacked-choices+.field,.panel-section>.stacked-choices+.fields,.panel-section>.stacked-choices+.field-row{margin-top:16px}.panel:not([hidden])+.remarks-area{margin-top:18px}.expandable-section{border:1px solid color-mix(in srgb,var(--accent)10%,var(--border));box-shadow:var(--shadow-sm);background:#fff;border-radius:18px;overflow:hidden}.expandable-section+.expandable-section{margin-top:12px}.expandable-section.is-open{border-color:var(--accent-border);box-shadow:0 0 0 1px var(--accent-border)}.expandable-trigger{width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:12px;padding:16px 14px;display:flex}.expandable-trigger:hover{background:#fcf8f4}.expandable-trigger-main{align-items:flex-start;gap:12px;display:flex}.expandable-check{border:1.5px solid var(--border-strong);color:#0000;width:24px;height:24px;transition:all .2s var(--ease);background:#fffdfb;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;font-size:.82rem;font-weight:700;display:inline-flex}.expandable-section.is-open .expandable-check{border-color:var(--accent);background:var(--accent);color:#fff}.expandable-title,.expandable-description{display:block}.expandable-title{font-size:.95rem;font-weight:700;line-height:1.45}.expandable-description{color:var(--text-muted);margin-top:2px;font-size:.8rem;line-height:1.6}.expandable-chevron{color:var(--text-muted);transition:transform .2s var(--ease),color .2s var(--ease);font-size:.95rem;line-height:1}.expandable-section.is-open .expandable-chevron{color:var(--accent);transform:rotate(180deg)}.expandable-content{border-top:1px solid color-mix(in srgb,var(--border)88%,white);gap:16px;padding:14px 14px 16px;display:grid}.btn-search-address{border:1.5px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);min-height:44px;color:var(--text-sub);white-space:nowrap;cursor:pointer;transition:all .2s var(--ease);justify-content:center;align-items:center;padding:0 14px;font-weight:700;display:inline-flex}.btn-search-address:hover{background:#f8f5f0;border-color:#bfb3a2}.choice-group{gap:10px;display:grid}.choice-grid{gap:8px;display:grid}.choice-grid-tight{margin-top:4px}.choice-card{cursor:pointer;border:2px solid var(--border);border-radius:var(--radius-md);background:var(--surface);padding:14px 16px;transition:border-color .2s,background .2s,box-shadow .2s,transform .15s;display:block}.choice-card input{opacity:0;pointer-events:none;width:0;height:0;position:absolute}.card-body{align-items:flex-start;display:flex}.card-title{font-size:.92rem;font-weight:700;line-height:1.4;display:block}.card-desc{color:var(--text-muted);margin-top:1px;font-size:.78rem;line-height:1.4;display:block}.choice-card:hover{border-color:var(--border-strong);background:#faf7f3}.choice-card:active{transform:scale(.985)}.choice-card:has(input:checked){border-color:var(--accent-border);background:var(--accent-soft);box-shadow:0 0 0 1px var(--accent-border)}.choice-card:has(input:focus-visible){box-shadow:0 0 0 3px #c2593024}.stacked-choices{gap:8px;display:grid}.stacked-choice,.check-chip{border:1.5px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;background:var(--surface);align-items:center;gap:10px;padding:13px 14px;transition:border-color .2s,background .2s;display:flex}.stacked-choice:hover,.check-chip:hover{border-color:var(--border-strong);background:#faf7f3}.stacked-choice input,.check-chip input{appearance:auto;width:18px;height:18px;accent-color:var(--accent);flex-shrink:0}.stacked-choice span,.check-chip span{font-size:.9rem;font-weight:600;line-height:1.5}:is(.stacked-choice:has(input:checked),.check-chip:has(input:checked)){border-color:var(--accent-border);background:var(--accent-soft)}.check-grid{gap:8px;display:grid}.review-cards{gap:12px;display:grid}.review-card{border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.review-card-header{border-bottom:1px solid var(--border);background:#f8f5f0;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.review-card-header h3{color:var(--text-sub);margin:0;font-size:.82rem;font-weight:700}.review-edit{color:var(--accent);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:4px 8px;font-size:.78rem;font-weight:700;transition:background .15s}.review-edit:hover{background:var(--accent-soft)}.review-body{padding:14px 16px}.review-row+.review-row{border-top:1px solid var(--border);margin-top:10px;padding-top:10px}.review-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:2px;font-size:.7rem;font-weight:700}.review-value{font-size:.9rem;line-height:1.6}.secure-note{border-radius:var(--radius-sm);background:var(--success-soft);color:var(--success);border:1px solid #18845a1f;margin-top:16px;padding:12px 14px;font-size:.8rem;line-height:1.65}.btn-next,.btn-back,.btn-outline{cursor:pointer;border-radius:var(--radius-sm);transition:all .2s var(--ease);border:0;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.btn-next{background:linear-gradient(180deg,var(--accent),var(--accent-deep));color:#fff;min-height:50px;padding:0 28px;font-size:.95rem;box-shadow:0 4px 16px #a0452533}.btn-next:hover{background:linear-gradient(180deg,var(--accent-hover),var(--accent));transform:translateY(-1px);box-shadow:0 6px 24px #a0452547}.btn-next:active{transform:translateY(0)}.btn-next.is-submit{background:linear-gradient(180deg,var(--success),#14704c);box-shadow:0 4px 16px #18845a33}.btn-next.is-submit:hover{box-shadow:0 6px 24px #18845a47}.btn-back{border:1.5px solid var(--border-strong);min-height:50px;color:var(--text-sub);background:0 0;padding:0 18px;font-size:.88rem}.btn-back:hover{background:#f8f5f0;border-color:#bfb3a2}.btn-back[hidden]{display:none}.btn-outline{border:1.5px solid var(--border-strong);background:var(--surface);color:var(--text-sub);padding:8px 14px;font-size:.82rem}.btn-outline:hover{background:#f8f5f0}.btn-sm{min-height:38px;margin-top:6px;font-size:.8rem}.wizard-footer{border-top:1px solid var(--border);-webkit-backdrop-filter:blur(8px);background:#ffffffe6;justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding:16px 24px;display:flex}.footer-right{align-items:center;gap:8px;display:flex}.toast-container{z-index:2000;pointer-events:none;flex-direction:column;align-items:center;gap:8px;width:min(380px,100vw - 32px);display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.toast{border-radius:var(--radius-sm);background:var(--text);color:#fff;pointer-events:auto;opacity:0;transition:opacity .28s var(--ease),transform .28s var(--ease);padding:12px 20px;font-size:.84rem;font-weight:600;line-height:1.5;transform:translateY(10px)scale(.96);box-shadow:0 8px 32px #0003}.toast.is-visible{opacity:1;transform:translateY(0)scale(1)}.toast-success{background:#16694e}.toast-error{background:#a13030}@media (prefers-reduced-motion:reduce){.toast{transition:opacity .15s;transform:none}.toast.is-visible{transform:none}}@media (min-width:520px){.wizard{border-radius:var(--radius);min-height:auto;margin:32px auto}.wizard-header{padding:36px 32px 0}.wizard-header h1{font-size:2rem}.step-inner{padding:32px 32px 40px}.fields,.field-row{grid-template-columns:1fr 1fr}.field.full{grid-column:1/-1}.choice-grid,.check-grid{grid-template-columns:1fr 1fr}.wizard-footer{padding:16px 32px}}@media (max-width:519px){.wizard{border-radius:0;min-height:100dvh;margin:0}.wizard-footer{z-index:100;position:sticky;bottom:0}.step-heading:before{margin-bottom:-12px;font-size:3.5rem}}
:root{--bg:#f0ebe3;--bg-end:#e4ddd2;--surface:#fff;--surface-subtle:#faf7f2;--border:#e0d6c9;--border-strong:#cec1af;--text:#1c1915;--text-sub:#5a5145;--text-muted:#8c8175;--accent:#c25930;--accent-deep:#a04525;--accent-soft:#c2593014;--success:#18845a;--success-soft:#18845a14;--radius-lg:24px;--radius-md:18px;--radius-sm:12px;--shadow:0 12px 48px #140e0614,0 2px 6px #140e060a}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{min-height:100vh;color:var(--text);background:linear-gradient(168deg,var(--bg)0%,var(--bg-end)100%);margin:0;font-family:Hiragino Sans,Hiragino Kaku Gothic ProN,Yu Gothic,Yu Gothic UI,Noto Sans JP,sans-serif}a{color:inherit}button,input,textarea,select{font:inherit}.shell{width:min(1080px,100vw - 32px);margin:32px auto 64px}.hero{border:1px solid color-mix(in srgb,var(--border)85%,white);box-shadow:var(--shadow);background:linear-gradient(#fffffff0 0%,#fffdfbfa 100%);border-radius:32px;padding:36px 28px}.eyebrow{color:var(--accent);letter-spacing:.08em;text-transform:none;margin:0 0 8px;font-size:.78rem;font-weight:700}.hero h1{letter-spacing:-.03em;margin:0;font-family:Avenir Next,Hiragino Mincho ProN,Yu Mincho,serif;font-size:clamp(2rem,4vw,3.4rem);line-height:1.08}.hero p{max-width:760px;color:var(--text-sub);margin:14px 0 0;font-size:1rem;line-height:1.8}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}.complete-shell{width:min(560px,100vw - 32px);margin-top:24px}.complete-card{border:1px solid color-mix(in srgb,var(--border)85%,white);background:linear-gradient(#fffffff5 0%,#fffdfbfa 100%);border-radius:22px;padding:22px 20px 20px;box-shadow:0 10px 28px #140e060f}.complete-badge{color:var(--accent);letter-spacing:.06em;margin:0 0 6px;font-size:.7rem;font-weight:700}.complete-card h1{letter-spacing:-.02em;margin:0;font-family:Avenir Next,Hiragino Mincho ProN,Yu Mincho,serif;font-size:clamp(1.3rem,2vw,1.8rem);line-height:1.2}.complete-copy{color:var(--text-sub);margin:10px 0 0;font-size:.94rem;line-height:1.7}.complete-actions{margin-top:16px}.complete-actions .btn{min-height:38px;padding:0 14px;font-size:.88rem}.btn{border:1px solid var(--border-strong);border-radius:999px;justify-content:center;align-items:center;min-height:46px;padding:0 18px;font-weight:700;text-decoration:none;display:inline-flex}.btn-primary{color:#fff;background:linear-gradient(180deg,var(--accent),var(--accent-deep));border-color:#0000}.btn-secondary{background:#ffffffb8}.grid{gap:18px;margin-top:20px;display:grid}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.card{border:1px solid color-mix(in srgb,var(--border)85%,white);border-radius:var(--radius-lg);background:#ffffffeb;padding:20px 18px;box-shadow:0 1px 3px #140e060a}.card h2,.card h3{margin:0 0 12px;font-size:1.05rem}.card p,.card li{color:var(--text-sub);line-height:1.75}.status-list,.task-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.status-item,.task-item{border-radius:var(--radius-md);background:var(--surface-subtle);border:1px solid color-mix(in srgb,var(--border)80%,white);padding:14px 14px 14px 16px}.status-label{align-items:center;gap:8px;margin-bottom:8px;font-weight:700;display:inline-flex}.status-pill{border-radius:999px;align-items:center;padding:2px 9px;font-size:.72rem;font-weight:700;display:inline-flex}.status-pill.is-ready{color:var(--success);background:var(--success-soft)}.status-pill.is-progress{color:var(--accent-deep);background:var(--accent-soft)}.status-pill.is-pending{color:var(--text-muted);background:#8c81751f}.code-block{border-radius:var(--radius-md);color:#f6eee6;background:#201912;margin:0;padding:16px;font-size:.84rem;line-height:1.75;overflow:auto}.footer-note{color:var(--text-muted);margin-top:20px;font-size:.86rem}.app-frame{width:min(100vw,720px);margin:0 auto}.inline-banner{border:1px solid color-mix(in srgb,var(--accent)22%,var(--border));color:var(--text-sub);background:#ffffffdb;border-radius:16px;margin:0 auto 18px;padding:14px 16px;line-height:1.7}.inline-banner strong{color:var(--text)}.stack{gap:12px;display:grid}.notice-box{border:1px solid var(--border);color:var(--text-sub);background:#ffffffd6;border-radius:18px;margin-top:18px;padding:16px 18px;line-height:1.75}.notice-box p{margin:0}.notice-box-warning{border-color:color-mix(in srgb,var(--accent)24%,var(--border));background:#fff7f1}.notice-box-success{border-color:color-mix(in srgb,var(--success)24%,var(--border));background:#f3fbf8}.form-error{color:#a14124;margin:0;font-size:.92rem}.admin-shell{width:min(1240px,100vw - 32px)}.admin-hero{gap:12px;padding:18px 18px 16px;display:grid}.admin-hero .eyebrow{letter-spacing:.14em;margin-bottom:2px;font-size:.68rem}.admin-hero h1{font-size:clamp(1.6rem,3.4vw,2.5rem);line-height:1}.admin-header-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.admin-header-actions{align-items:center;gap:8px;display:flex}.admin-role-card{border:1px solid color-mix(in srgb,var(--border)82%,white);min-width:180px;color:var(--text-sub);background:#ffffffd1;border-radius:16px;gap:2px;padding:10px 12px;display:grid}.admin-header-actions .btn{min-height:36px;padding:0 14px}.role-badge,.request-type-pill{letter-spacing:.06em;text-transform:uppercase;border-radius:999px;justify-content:center;align-items:center;width:fit-content;padding:4px 10px;font-size:.72rem;font-weight:800;display:inline-flex}.role-developer{color:#8b3f1b;background:#c259301f}.role-staff{color:#196d4e;background:#18845a1f}.chip-row{flex-wrap:wrap;gap:6px;display:flex}.chip-link{border:1px solid color-mix(in srgb,var(--border)80%,white);min-height:30px;color:var(--text-sub);background:#ffffffb8;border-radius:999px;align-items:center;padding:0 10px;font-size:.84rem;font-weight:700;text-decoration:none;display:inline-flex}.chip-link.is-active{background:linear-gradient(180deg,var(--accent),var(--accent-deep));color:#fff;border-color:#0000}.admin-filter-bar{flex-wrap:wrap;gap:8px;display:flex}.admin-filter-bar input,.admin-user-form input,.admin-user-form select,.admin-user-row select{border:1px solid var(--border-strong);background:#ffffffe6;border-radius:12px;min-height:36px;padding:0 12px}.admin-filter-bar input{flex:0 420px;width:min(420px,100%)}.admin-grid{grid-template-columns:1fr;gap:12px;display:grid}.admin-panel,.admin-users-card{border:1px solid color-mix(in srgb,var(--border)85%,white);background:#ffffffe0;border-radius:20px;padding:16px;box-shadow:0 1px 3px #140e060a}.admin-panel-list{order:1}.admin-users-card{margin-top:40px;padding:14px 16px}.panel-heading{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:16px;display:flex}.panel-heading h2{margin:0;font-size:1.08rem}.panel-heading span{color:var(--text-muted);font-size:.84rem}.request-list,.detail-stack,.admin-users-table{gap:12px;display:grid}.request-list{gap:2px}.request-row{gap:4px;display:grid}.request-list-head,.request-item{grid-template-columns:82px 96px minmax(108px,.62fr) minmax(96px,.54fr) minmax(0,1.45fr) 30px;align-items:center;gap:8px;display:grid}.request-list-head{color:color-mix(in srgb,var(--text-muted)70%,white);letter-spacing:.08em;text-transform:uppercase;opacity:.8;padding:0 8px 2px;font-size:.58rem;font-weight:600}.request-list-head span:last-child{text-align:center}.request-item{border:1px solid color-mix(in srgb,var(--border)82%,white);background:#ffffffe0;border-radius:12px;padding:6px 8px;text-decoration:none;transition:transform .14s,border-color .14s,box-shadow .14s}.request-item:hover,.request-item.is-selected{border-color:color-mix(in srgb,var(--accent)26%,var(--border));transform:translateY(-1px);box-shadow:0 10px 30px #140e060f}.request-type-pill{color:#8b3f1b;white-space:nowrap;background:#c259301f}.request-cell-toggle{justify-content:center;display:flex}.request-toggle{border:1px solid color-mix(in srgb,var(--border)82%,white);min-width:26px;min-height:26px;color:var(--text-sub);background:#ffffffe6;border-radius:999px;justify-content:center;align-items:center;gap:0;padding:0;font-size:.72rem;font-weight:700;text-decoration:none;display:inline-flex}.request-toggle.is-open{border-color:color-mix(in srgb,var(--accent)24%,var(--border));color:var(--accent-deep);background:#fff8f4e6}.request-toggle-icon{font-size:.72rem}.request-cell{min-width:0;overflow:hidden}.request-cell strong,.request-cell span{display:block}.request-subline{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;margin-top:1px;font-size:.76rem;overflow:hidden}.request-date,.request-instructor,.request-summary,.admin-user-main span{color:var(--text-muted)}.request-date{font-variant-numeric:tabular-nums;font-size:.74rem;line-height:1.2}.request-summary{white-space:nowrap;text-overflow:ellipsis;font-size:.74rem;line-height:1.2;overflow:hidden}.request-cell-applicant strong,.request-instructor{white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;line-height:1.2;overflow:hidden}.request-type-pill{padding:2px 8px;font-size:.64rem}.request-inline-detail{padding:0 4px 4px}.request-pagination{justify-content:space-between;align-items:center;gap:12px;margin-top:10px;padding:4px 2px 0;display:flex}.request-pagination-status,.request-pagination-current{color:var(--text-muted);font-size:.8rem}.request-pagination-actions{align-items:center;gap:10px;display:flex}.pagination-link{color:var(--text-sub);font-size:.84rem;font-weight:700;text-decoration:none}.pagination-link.is-disabled{pointer-events:none;opacity:.42}.detail-card{border:1px solid color-mix(in srgb,var(--border)82%,white);background:#ffffffdb;border-radius:18px;padding:18px}.detail-card h3{margin:0 0 14px}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;margin:0;display:grid}.detail-grid dt{color:var(--text-muted);margin:0 0 6px;font-size:.82rem}.detail-grid dd{margin:0;line-height:1.7}.summary-block{white-space:pre-wrap;word-break:break-word;color:var(--text-sub);margin:0;line-height:1.7}.empty-state{border:1px dashed var(--border-strong);color:var(--text-muted);background:#ffffff8a;border-radius:18px;padding:28px 18px}.empty-state p{margin:0}.admin-user-form{grid-template-columns:minmax(240px,360px) 140px auto;align-items:end;gap:8px;margin:10px 0 14px;display:grid}.admin-user-form .btn{justify-self:start;min-width:96px}.admin-user-row{border:1px solid color-mix(in srgb,var(--border)82%,white);background:#ffffffa8;border-radius:14px;grid-template-columns:minmax(280px,1fr) 140px 140px auto;align-items:center;gap:8px;padding:10px 12px;display:grid}.admin-user-main{gap:2px;display:grid}.admin-user-main strong{word-break:break-all;font-size:.96rem;font-weight:700;line-height:1.25;display:block}.admin-user-main span{font-size:.78rem}.admin-users-table{gap:8px}@media (max-width:720px){.admin-user-form,.admin-user-row{grid-template-columns:1fr}.request-list-head{display:none}.request-item{grid-template-columns:124px minmax(0,1fr);align-items:start;gap:8px 14px;padding:10px}.request-cell-summary,.request-cell-instructor,.request-cell-applicant,.request-cell-toggle{grid-column:1/-1}.request-cell-applicant{padding-bottom:2px}.request-cell-instructor{margin-top:-2px}.request-instructor:before{content:"対象講師: "}.request-cell-toggle{justify-content:flex-start}.request-toggle{min-width:auto;padding:0}.request-summary{white-space:normal;text-overflow:unset;overflow:visible}.request-pagination{flex-direction:column;align-items:flex-start}}@media (max-width:800px){.shell{width:min(100vw - 20px,1080px);margin:16px auto 40px}.hero{border-radius:24px;padding:28px 20px}.grid-2{grid-template-columns:1fr}.admin-shell{width:min(100vw - 20px,1240px)}.admin-header-row,.detail-grid{grid-template-columns:1fr;display:grid}.admin-header-actions{justify-items:stretch}.admin-role-card{min-width:0}}
