:root{color:#211f1b;font-synthesis:none;text-rendering:optimizelegibility;background:#f2eadc;font-family:Hiragino Mincho ProN,Yu Mincho,YuMincho,Noto Serif JP,Georgia,serif;line-height:1.6}*{box-sizing:border-box}body{background:linear-gradient(120deg,#8b252514,#0000 34%),linear-gradient(240deg,#26506f1f,#0000 36%),repeating-linear-gradient(0deg,#211f1b06,#211f1b06 1px,#0000 1px 5px),#f2eadc;min-width:320px;min-height:100vh;margin:0}button,input,textarea{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh}.site-header{z-index:10;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f2eadcdb;border-bottom:1px solid #211f1b1f;justify-content:space-between;align-items:center;min-height:72px;padding:0 5vw;display:flex;position:sticky;top:0}.wordmark,.site-header nav button{color:#211f1b;background:0 0;border:0}.wordmark{letter-spacing:0;padding:0;font-size:1rem;font-weight:700}.site-header nav button{border:1px solid #211f1b38;border-radius:999px;min-height:40px;padding:0 16px}.hero-section{grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);align-items:center;gap:clamp(32px,6vw,88px);min-height:calc(100vh - 72px);padding:clamp(48px,8vw,96px) 5vw;display:grid}.hero-copy{max-width:760px}.eyebrow,.panel-label{color:#8a2e2e;margin:0 0 12px;font-family:Hiragino Sans,Yu Gothic,Noto Sans JP,system-ui,sans-serif;font-size:.78rem;font-weight:700}h1,h2,p{overflow-wrap:anywhere}h1{color:#1f2b34;max-width:12em;margin:0;font-size:clamp(2.8rem,7vw,6.4rem);font-weight:700;line-height:1.05}.lead{color:#8a2e2e;margin:28px 0 0;font-size:clamp(1.35rem,2.5vw,2.4rem);font-weight:700}.description,.section-heading p{color:#211f1bc7;max-width:680px;margin:18px 0 0;font-size:1.02rem}.action-row{flex-wrap:wrap;gap:12px;margin-top:36px;display:flex}.primary-button{color:#fff8ea;background:#1f2b34;border:1px solid #1f2b34;border-radius:4px;min-height:52px;padding:0 24px;font-family:Hiragino Sans,Yu Gothic,Noto Sans JP,system-ui,sans-serif;font-weight:700;box-shadow:0 14px 28px #1f2b342e}.primary-button:disabled{cursor:wait;opacity:.72}.secondary-button{color:#1f2b34;background:#fff8eacc;border:1px solid #211f1b47;border-radius:4px;min-height:44px;padding:0 18px;font-family:Hiragino Sans,Yu Gothic,Noto Sans JP,system-ui,sans-serif;font-weight:700}.notice,.closing-note{color:#211f1b9e;max-width:620px;margin-top:26px;font-size:.9rem}.baton-preview{justify-content:center;display:flex}.paper-stack{background:linear-gradient(135deg,#ffffffb3,#fff8ea38),#f8f0df;border:1px solid #211f1b2e;width:min(100%,420px);min-height:500px;padding:42px;box-shadow:24px 28px #26506f1f,-18px -18px #8a2e2e14}.paper-stack p{color:#1f2b34;margin:0;font-size:clamp(1.4rem,3vw,2.3rem);font-weight:700;line-height:1.25}.paper-stack span{background:#8a2e2e80;width:1px;height:82px;margin:24px 0;display:block}.page-section{width:min(1120px,90vw);margin:0 auto;padding:clamp(48px,8vw,88px) 0}.page-section.narrow{width:min(820px,90vw)}.section-heading{margin-bottom:32px}.section-heading h1{max-width:14em;font-size:clamp(2.1rem,5vw,4rem)}.submit-form{background:#fff8eaa3;border:1px solid #211f1b29;gap:22px;padding:clamp(24px,5vw,42px);display:grid}.submit-form label{gap:8px;display:grid}.submit-form label span,.form-footer span{color:#211f1bb3;font-family:Hiragino Sans,Yu Gothic,Noto Sans JP,system-ui,sans-serif;font-size:.9rem;font-weight:700}input,textarea{color:#211f1b;background:#fffdf7e6;border:1px solid #211f1b38;border-radius:4px;width:100%}input{min-height:48px;padding:0 14px}textarea{resize:vertical;min-height:280px;padding:14px}input:focus,textarea:focus,button:focus-visible{outline-offset:2px;outline:3px solid #26506f47}.form-footer{justify-content:space-between;align-items:center;gap:16px;display:flex}.form-message{border-radius:4px;margin:0;padding:14px 16px;font-family:Hiragino Sans,Yu Gothic,Noto Sans JP,system-ui,sans-serif;font-size:.92rem;font-weight:700}.error-message{color:#7a2525;background:#8a2e2e14;border:1px solid #8a2e2e3d}.status-panel{background:#fff8eaad;border:1px solid #211f1b29;gap:18px;max-width:780px;padding:clamp(26px,5vw,44px);display:grid}.status-panel h1{max-width:14em;font-size:clamp(2rem,5vw,4rem)}.status-panel .primary-button{width:fit-content}.result-layout{width:min(1180px,90vw)}.result-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:20px;display:grid}.text-panel{background:#fff8eaad;border:1px solid #211f1b29;min-width:0;padding:clamp(22px,4vw,38px)}.text-panel.accent{background:#f6f2e8e6;border-color:#26506f47}.text-panel h2{color:#1f2b34;margin:0 0 20px;font-size:clamp(1.3rem,2vw,1.8rem);line-height:1.35}pre{white-space:pre-wrap;overflow-wrap:anywhere;color:#211f1bd1;font:inherit;margin:0}.admin-layout{width:min(1440px,94vw)}.admin-heading{justify-content:space-between;align-items:flex-end;gap:20px;display:flex}.admin-account{color:#211f1ba8;margin-top:10px;font-family:Hiragino Sans,Yu Gothic,Noto Sans JP,system-ui,sans-serif;font-size:.9rem}.admin-account code{color:#1f2b34;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.86rem}.admin-sections{gap:28px;display:grid}.admin-panel{min-width:0}.admin-panel-heading{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:12px;display:flex}.admin-panel-heading h2{color:#1f2b34;margin:0;font-family:Hiragino Sans,Yu Gothic,Noto Sans JP,system-ui,sans-serif;font-size:1.2rem}.admin-panel-heading span{color:#211f1b9e;font-family:Hiragino Sans,Yu Gothic,Noto Sans JP,system-ui,sans-serif;font-size:.9rem;font-weight:700}.admin-table-wrap{background:#fff8eaad;border:1px solid #211f1b29;overflow-x:auto}.admin-table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:1240px}.admin-table th,.admin-table td{vertical-align:top;text-align:left;border-bottom:1px solid #211f1b1f;padding:12px}.admin-table th{color:#1f2b34;background:#efe4d1;font-family:Hiragino Sans,Yu Gothic,Noto Sans JP,system-ui,sans-serif;font-size:.78rem}.admin-table td{color:#211f1bd1;font-family:Hiragino Sans,Yu Gothic,Noto Sans JP,system-ui,sans-serif;font-size:.82rem}.admin-table th:first-child,.admin-table td:first-child{width:260px}.admin-table th:nth-child(2),.admin-table td:nth-child(2),.admin-table th:nth-child(3),.admin-table td:nth-child(3){width:190px}.admin-table th:nth-child(4),.admin-table td:nth-child(4){width:230px}.admin-table th:nth-child(5),.admin-table td:nth-child(5){width:150px}.admin-table a{color:#26506f}.admin-table code{color:#1f2b34c7;white-space:normal;overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.76rem;display:block}.admin-snippet{max-height:8.8em;font-family:inherit;font-size:inherit;-webkit-line-clamp:5;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}@media (width<=760px){.site-header{min-height:64px}.hero-section,.result-grid{grid-template-columns:1fr}.hero-section{min-height:auto;padding-top:44px}.baton-preview{justify-content:flex-start}.paper-stack{min-height:340px;padding:28px;box-shadow:12px 14px #26506f1f}.paper-stack span{height:44px}.form-footer{flex-direction:column;align-items:stretch}.primary-button,.status-panel .primary-button{width:100%}.admin-heading{flex-direction:column;align-items:stretch}.secondary-button{width:100%}}
