:root{font-family:Inter,"Segoe UI",Arial,sans-serif;color:#262420;background:#f5f2eb;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:not-allowed}a{color:inherit}.portal-shell{min-height:100vh;display:flex;flex-direction:column;background:radial-gradient(circle at 7% 0%,#fff3d2 0,transparent 28%),linear-gradient(135deg,#f4f0e7,#faf8f4 55%,#f1eadf)}.portal-header{min-height:86px;background:#302d28;color:#fff;display:flex;align-items:center;gap:18px;padding:14px clamp(18px,4vw,54px);box-shadow:0 12px 35px #25201921}.portal-logo{width:54px;height:54px;display:grid;place-items:center;background:#fff;border-radius:16px;padding:5px}.portal-logo img{width:100%;height:100%;object-fit:contain}.portal-heading{display:flex;flex-direction:column;gap:3px}.portal-heading strong{font-size:20px;letter-spacing:-.03em}.eyebrow{font-size:11px;letter-spacing:.17em;font-weight:850;color:#a67500;margin:0 0 9px}.portal-header .eyebrow{color:#ffd366;margin:0}.header-actions{margin-left:auto;display:flex;align-items:center;gap:18px;font-size:13px}.header-actions button{border:1px solid #746e64;color:#fff;background:#484239;border-radius:12px;min-height:44px;padding:0 18px}.header-actions button:hover{background:#5c5244}.portal-main{width:min(1440px,calc(100% - 36px));margin:28px auto 55px;display:grid;gap:28px}.portal-main[hidden]{display:none}.welcome-panel{border:1px solid #e5d9c4;border-radius:30px;padding:clamp(25px,4vw,50px);min-height:220px;background:linear-gradient(115deg,#fffdfa,#fff6dc 58%,#ead8ad);display:flex;align-items:center;justify-content:space-between;gap:20px;box-shadow:0 20px 50px #30200012;overflow:hidden}.welcome-panel h1{font-size:clamp(27px,3vw,43px);letter-spacing:-.055em;line-height:1.1;margin:0 0 12px}.welcome-panel p:last-child{font-size:14px;color:#645e54;max-width:640px;margin:0;line-height:1.55}.welcome-mark{width:145px;height:145px;flex:0 0 145px;border:1px solid #d9bc69;border-radius:35px;background:#ffca21;transform:rotate(-9deg);display:flex;align-items:center;justify-content:center;font-weight:900;font-size:39px;position:relative;color:#2e281d;box-shadow:18px 20px 0 #e9d9b7}.welcome-mark span{position:absolute;bottom:19px;right:18px;font-size:12px}.notice{border-radius:15px;padding:14px 18px;background:#e5f4ee;border:1px solid #c1ded0;color:#175c42}.notice.error{background:#fff0ed;border-color:#e5c2b9;color:#8f372b}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 6px 14px}.section-heading h2{font-size:25px;letter-spacing:-.04em;margin:0 0 7px}.section-heading p:last-child{font-size:13px;color:#756e64;margin:0}.quiet-pill{font-size:11px;letter-spacing:.09em;font-weight:800;border:1px solid #e9d49a;background:#fff4d7;border-radius:99px;padding:11px 16px;white-space:nowrap}.setup-grid,.register-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.panel{background:#fffdf9;border:1px solid #e5ded2;border-radius:24px;padding:24px;box-shadow:0 10px 32px #4437190a}.panel-head{display:flex;align-items:center;gap:14px;margin-bottom:21px}.panel-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:#fff1c6;color:#7e5600;font-size:24px;flex:0 0 48px}.panel h3{font-size:17px;margin:0 0 5px;letter-spacing:-.025em}.panel-head p{font-size:12px;color:#756e64;margin:0}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.field-grid label{font-size:12px;font-weight:700;display:grid;gap:8px;color:#655c4e}.field-grid label[hidden]{display:none}.field-grid input,.field-grid select{width:100%;min-width:0;height:48px;border-radius:12px;border:1px solid #d9d2c5;background:#fff;color:#2b2925;padding:0 13px;font-size:14px;font-weight:400}.field-grid input:focus,.field-grid select:focus{outline:3px solid #ffdf82;border-color:#e9a800}.field-grid button{grid-column:1/-1;justify-self:start}.primary{background:#ffbe00;color:#28220f;border:1px solid #ffbe00;min-height:48px;padding:0 21px;border-radius:12px;font-size:13px;font-weight:800}.primary:hover{background:#ffcf39;transform:translateY(-1px)}.register-grid .panel{min-height:170px}.panel h3 .count{display:inline-grid;place-items:center;border-radius:99px;background:#f4eee2;min-width:28px;height:28px;font-size:12px;margin-left:5px}.row-list{display:grid;gap:0}.row{padding:14px 0;border-top:1px solid #eee7dc;display:flex;align-items:center;gap:12px;min-width:0}.row:first-child{border-top:0}.row-main{display:grid;gap:4px;min-width:0;flex:1}.row-main strong{font-size:14px;overflow-wrap:anywhere}.row-main small{font-size:12px;color:#746c61;overflow-wrap:anywhere}.badge{border-radius:99px;padding:6px 9px;background:#f2ece1;color:#655b4c;font-size:11px;font-weight:750;white-space:nowrap}.badge.active{background:#e3f4ec;color:#276149}.row button{min-height:44px;border-radius:11px;border:1px solid #ded5c6;background:#fffaf1;color:#6f550c;padding:0 12px;font-size:12px;font-weight:700}.empty{color:#80766a;font-size:13px;line-height:1.5;padding:12px 0}.portal-footer{margin-top:auto;padding:24px clamp(18px,4vw,54px);display:flex;justify-content:space-between;gap:15px;color:#746e64;font-size:12px;border-top:1px solid #e1dace}@media(max-width:800px){.setup-grid,.register-grid{grid-template-columns:1fr}.welcome-mark{width:100px;height:100px;flex-basis:100px;font-size:28px;border-radius:24px}.header-actions span{display:none}}@media(max-width:560px){.portal-main{width:min(100% - 24px,1440px);margin:16px auto 35px;gap:24px}.portal-header{min-height:74px;padding:10px 14px;gap:10px}.portal-logo{width:45px;height:45px}.portal-heading strong{font-size:16px}.portal-heading .eyebrow{font-size:9px}.header-actions button{padding:0 11px}.welcome-panel{border-radius:24px;min-height:185px}.welcome-mark{display:none}.field-grid{grid-template-columns:1fr}.field-grid button{width:100%}.panel{padding:18px;border-radius:20px}.section-heading{align-items:flex-start}.quiet-pill{display:none}.portal-footer{flex-direction:column;padding:20px 18px}.row{align-items:flex-start;flex-wrap:wrap}.row .badge{margin-left:auto}}
