:root{--ink:#142943;--muted:#6c85a1;--line:#dbe9f5;--blue:#0875d1;--blue2:#36b7f2;--surface:#fff;--canvas:#f2f8fd;--shadow:0 12px 34px rgba(25,79,128,.08)}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;color:var(--ink);background:var(--canvas)}button,input,select,textarea{font:inherit}button{cursor:pointer}[hidden]{display:none!important}
.layout{min-height:100vh;display:grid;grid-template-columns:256px minmax(0,1fr)}.sidebar{padding:32px 19px;background:linear-gradient(158deg,#f7fcff 0%,#eff9ff 66%,#e7f5ff 100%);border-right:1px solid #daeaf6;display:flex;flex-direction:column;gap:34px}.brand{display:flex;align-items:center;gap:9px;padding:7px 11px;font-size:29px;font-weight:850;letter-spacing:2.5px;color:#115fac}.brand-mark{color:#05a7ec;font-size:31px;filter:drop-shadow(0 0 10px #39c5ff90)}.nav-area{display:grid;gap:6px}.nav-section{padding:0 14px 11px;font-size:10px;letter-spacing:1.8px;color:#9fb2c6;font-weight:800}.nav{color:#58728d;background:transparent;border:0;display:flex;align-items:center;gap:12px;text-align:left;padding:14px 17px;border-radius:13px;font-size:14px;font-weight:700}.nav span{width:19px;text-align:center;font-size:19px}.nav.active{background:linear-gradient(105deg,#e0f2ff,#effaff);color:#006cc3;box-shadow:inset 3px 0 #209fe9}.nav:hover{background:#e5f4ff}.sidebar-footer{margin-top:auto;padding:16px 12px 6px;color:#93abc1}.secure-badge{font-size:10px;font-weight:800;letter-spacing:1px;color:#1380c3}.sidebar-footer small{font-size:10px;line-height:2}
.main{display:flex;min-width:0;flex-direction:column}.header{min-height:104px;background:rgba(255,255,255,.78);border-bottom:1px solid var(--line);padding:23px 44px;display:flex;justify-content:space-between;align-items:center;gap:15px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:800;color:#2f9ad6}.header h1{margin:4px 0 0;font-size:22px;color:#174c85;letter-spacing:1.2px}.header-right{display:flex;gap:10px;align-items:center;color:#56738d;font-size:12px}.status-dot{height:8px;width:8px;border-radius:50%;background:#1dc6ab;box-shadow:0 0 11px #28c3ba77}.main-content{max-width:1130px;margin:0 auto;padding:44px;flex:1;width:100%}.footer{font-size:10px;color:#9db0c4;letter-spacing:1.2px;padding:18px 42px;display:flex;justify-content:space-between}
.login-screen{text-align:center;min-height:560px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:38px 12px}.orb{height:100px;width:100px;border:2px solid #b6e4ff;background:radial-gradient(circle at 40% 32%,#efffff 0,#b6e9ff 38%,#52c0f7 73%,#1679d5 100%);border-radius:50%;display:flex;align-items:center;justify-content:center;color:white;font-size:61px;font-weight:800;box-shadow:0 0 0 13px #d6f3ff83,0 0 45px #3ebaff99;margin-bottom:41px}.login-screen h2,.welcome h2{font-size:28px;line-height:1.5;margin:14px 0 8px}.login-screen p,.welcome p{line-height:1.9;color:var(--muted);font-size:14px}.primary{background:linear-gradient(115deg,#1276d1,#14ade9);color:#fff;border:0;border-radius:11px;padding:13px 20px;font-weight:750;box-shadow:0 8px 18px #139de23d;display:inline-flex;gap:16px;justify-content:center;align-items:center;text-decoration:none}.primary:hover{filter:brightness(1.06)}.primary:disabled{opacity:.4;cursor:not-allowed}.login-button{margin:28px auto 8px;padding:16px 27px}.login-footnote{font-size:11px!important;color:#a4b3c2!important}.ghost{background:#fff;border:1px solid #cfe3f2;color:#407ca7;border-radius:10px;padding:8px 12px}.small{font-size:12px}
.welcome{text-align:center;margin:68px 0 33px}.welcome h2{font-size:31px}.prompt-card{max-width:740px;margin:0 auto;border:1px solid #c9e3f5;background:white;border-radius:22px;box-shadow:var(--shadow);overflow:hidden}.prompt-sample{background:#ecf8ff;color:#467c9f;padding:16px 20px;font-size:12px;line-height:1.9}.prompt-input{display:flex;align-items:center;padding:18px;gap:12px}.prompt-input textarea{resize:none;width:100%;height:65px;padding:10px;border:0;outline:none;font-size:14px;color:var(--ink)}.send-button{font-size:19px;background:#e0f2fd;border:0;border-radius:10px;color:#8db4ce;padding:9px 13px}.info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;max-width:900px;margin:40px auto}.info-card,.admin-panel{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:17px;padding:22px}.info-card{min-height:170px}.info-icon{font-size:25px;color:#219ddd;display:block;margin-bottom:15px}.info-card b{font-size:14px}.info-card p{font-size:12px;color:var(--muted);line-height:1.8}
.notice{background:#fff7e9;border:1px solid #ffe2a2;border-radius:11px;padding:14px 17px;color:#936b26;font-size:13px;line-height:1.7;margin-bottom:18px}.section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:23px}.section-head h2{font-size:21px;margin:0 0 9px}.section-head p{color:var(--muted);font-size:13px;margin:0}.data-list{display:grid;gap:9px}.data-row{padding:14px 17px;display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--line);border-radius:12px;background:#fff;font-size:13px}.data-row strong{overflow-wrap:anywhere}.data-row a{color:#087ec7}.data-row small{display:block;color:#90a8bd;margin-top:5px}.empty-state{background:#fff;border:1px dashed #b8d7ed;border-radius:13px;text-align:center;padding:38px 10px;color:#8ca4b8;font-size:13px}.admin-grid{display:grid;grid-template-columns:minmax(260px,440px) minmax(0,1fr);gap:18px}.admin-panel h3{margin:0 0 18px;font-size:17px}.admin-panel label{display:block;color:#4c7291;font-weight:700;font-size:12px;margin-bottom:13px}.admin-panel input,.admin-panel select,.admin-panel textarea{display:block;width:100%;border:1px solid #cedfee;background:#fbfdff;border-radius:9px;padding:11px 12px;font-size:13px;margin-top:7px;color:var(--ink)}.admin-panel textarea{resize:vertical}.two-cols{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field-note{font-size:10px;line-height:1.7;color:#8ba2b8;margin:4px 0 18px}.member-actions{display:flex;align-items:center;gap:8px}.member-actions button{white-space:nowrap}
@media(max-width:900px){.layout{grid-template-columns:1fr}.sidebar{padding:10px 14px;display:block;border-right:0;border-bottom:1px solid #d6e6f3}.brand{font-size:23px;padding:4px}.brand-mark{font-size:24px}.nav-area{display:flex;align-items:center;overflow:auto;margin-top:10px;gap:4px}.nav-section,.sidebar-footer{display:none}.nav{padding:9px 12px;white-space:nowrap}.header{min-height:76px;padding:15px 19px}.header h1{font-size:19px}.eyebrow{font-size:9px}.main-content{padding:20px}.info-grid{grid-template-columns:1fr}.admin-grid{grid-template-columns:1fr}.footer{padding:15px 20px}.login-screen{min-height:440px}.welcome{margin:34px 0 23px}}
