/* MiKit 0.1 - lightweight responsive CSS, no fonts/scripts/network requests */
:root{color-scheme:light;--ink:#182238;--muted:#64718a;--line:#e5eaf2;--canvas:#f6f8fc;--white:#fff;--blue:#335bda;--blue-dark:#2449b8;--green:#087f5b;--red:#b42333;--radius:14px;--shadow:0 3px 15px rgba(20,31,57,.035)}
*{box-sizing:border-box}html{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:15px;line-height:1.53;-webkit-text-size-adjust:100%}body{margin:0;background:var(--canvas);color:var(--ink)}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer}h1,h2,h3,p{margin-top:0}h1{font-weight:720;letter-spacing:-.04em;font-size:clamp(1.65rem,2.8vw,2.2rem);line-height:1.24;margin-bottom:.45rem}h2{font-size:1.14rem;letter-spacing:-.02em;font-weight:700;margin:0 0 1.2rem}h3{font-size:1rem;letter-spacing:-.012em;margin:0 0 1rem}p{color:var(--muted)}small,.small{font-size:.8rem}code{font-family:ui-monospace,Consolas,monospace;font-size:.84em;padding:2px 5px;background:#f1f4f9;border-radius:5px}b,strong{font-weight:650}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #85a6ff;outline-offset:3px}
.shell{max-width:680px;margin:0 auto;padding:24px}.shell.wide{max-width:1160px}.card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:24px;margin-bottom:18px;min-width:0}.card> :last-child{margin-bottom:0}.card-top,.between{display:flex;align-items:center;justify-content:space-between;gap:16px}.card-top{margin-bottom:18px}.card-top h2{margin:0}.card-narrow{max-width:680px}.tag{background:#edf1fa;color:#52617c;display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;white-space:nowrap;font-size:.72rem;font-weight:650}.muted{color:var(--muted)}.eyebrow{color:var(--blue);font-size:.77rem;font-weight:750;letter-spacing:.095em;text-transform:uppercase}.btn{border:1px solid #d8dfea;background:white;color:var(--ink);font-weight:650;padding:11px 17px;min-height:42px;border-radius:9px;display:inline-flex;align-items:center;gap:10px;justify-content:center;box-shadow:0 1px 3px rgba(24,34,56,.05);transition:background .13s,border-color .13s}.btn:hover{background:#f3f6fa;text-decoration:none}.btn.primary{border-color:var(--blue);background:var(--blue);color:#fff}.btn.primary:hover{background:var(--blue-dark)}.btn.secondary{background:#f1f4fe;color:var(--blue);border-color:#e1e8ff}.btn.subtle{border-color:var(--line);background:#fff;color:#536178}.btn.danger-btn{color:var(--red);border-color:#ffccd2;background:#fff8f8}.btn.block{display:flex;width:100%}.btn.small-btn{min-height:33px;padding:6px 10px;font-size:.8rem;white-space:nowrap}.field{margin-bottom:19px}.field label,.field>label{font-weight:630;display:block;font-size:.87rem;margin:0 0 7px}input:not([type=checkbox]),textarea,select{display:block;width:100%;border:1px solid #d9e0ea;border-radius:9px;padding:11px 12px;background:#fff;color:var(--ink);outline:none;min-height:43px;min-width:0}input:not([type=checkbox]):focus,textarea:focus,select:focus{border-color:#6588ee;box-shadow:0 0 0 3px rgba(51,91,218,.11)}textarea{resize:vertical;min-height:88px}input::placeholder,textarea::placeholder{color:#64718a}.field small{display:block;color:var(--muted);margin:6px 0 0}.field-error{color:var(--red)!important;font-weight:600}.check{display:flex;align-items:center;gap:9px;font-size:.89rem;margin:12px 0 23px;color:#3d485e;cursor:pointer}.check input{width:17px;height:17px;accent-color:var(--blue)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.req{color:#d52a3d}.alert{padding:12px 15px;border-radius:9px;margin-bottom:18px;font-weight:570;font-size:.9rem}.alert.success{background:#e6f7ef;color:#08774d;border:1px solid #bbecd7}.alert.danger{background:#fff0f0;color:#b32632;border:1px solid #ffd2d4}
/* Public form experience */
.site-header{height:78px;display:flex;align-items:center;background:#fff;border-bottom:1px solid var(--line)}.site-header .wide{display:flex;justify-content:space-between;align-items:center;width:100%}.brand{display:flex;align-items:center;gap:11px;font-size:1.02rem;color:#1b2841;font-weight:750}.brand:hover{text-decoration:none}.brand-mark{display:inline-flex;align-items:center;justify-content:center;background:#305de6;color:#fff;border-radius:10px;flex:0 0 35px;width:35px;height:35px;font-weight:780;font-size:1.1rem;letter-spacing:-.06em;box-shadow:0 5px 12px rgba(43,86,208,.22)}.brand-mark.large{width:42px;height:42px;font-size:1.24rem;border-radius:12px}.header-right{color:#536278;font-size:.81rem;font-weight:650}.form-shell{margin:6vh auto 5vh}.form-header{display:flex;align-items:flex-end;justify-content:space-between;gap:14px}.form-header h1{margin:8px 0 8px}.form-header p{margin-bottom:17px}.step-counter{color:var(--blue);background:#e8edff;font-size:.9rem;font-weight:760;white-space:nowrap;border-radius:9px;padding:5px 10px;margin-bottom:20px}.progress{height:6px;border-radius:99px;background:#e6ebf3;margin:0 0 22px;overflow:hidden}.progress-fill{height:100%;background:var(--blue);border-radius:99px}.form-shell>.card{padding:30px}.privacy-note{font-size:.79rem;line-height:1.65;border-top:1px solid var(--line);padding-top:18px;margin:8px 0 22px}.form-shell .btn.primary{width:100%;justify-content:space-between;padding:12px 16px}.foot{text-align:center;color:#596880;padding:32px 16px;font-size:.8rem}.center{text-align:center}.complete-icon{width:52px;height:52px;background:#dff8ed;color:#087f5b;display:inline-flex;justify-content:center;align-items:center;border-radius:100%;font-size:1.8rem;margin-bottom:16px}.wait{text-align:center;padding:24px 0}.wait h2{margin:15px 0 4px}.spinner{display:inline-block;width:37px;height:37px;border:4px solid #dbe4f9;border-top-color:var(--blue);border-radius:50%;animation:rotate 1s linear infinite}@keyframes rotate{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
/* Install / login */
.auth-layout{min-height:100dvh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 50% 0,#e9efff,transparent 520px),#f7f9fd}.auth-panel{width:min(100%,430px);background:#fff;border:1px solid var(--line);border-radius:19px;padding:35px;box-shadow:0 20px 75px rgba(38,62,112,.075)}.auth-panel h1{font-size:1.85rem;margin:24px 0 12px}.auth-panel p{font-size:.91rem;line-height:1.7}.auth-panel .muted.small{margin:24px 0 0;text-align:center}.auth-top{display:flex;align-items:center;gap:11px;font-weight:770;font-size:1rem}.auth-top .tag{margin-left:8px}
/* Admin workspace */
.app-frame{min-height:100dvh;display:flex}.sidebar{width:245px;flex:0 0 245px;background:#111b30;color:#ced6e8;min-height:100dvh;padding:27px 14px 24px;display:flex;flex-direction:column;position:sticky;top:0;height:100dvh}.sidebar-brand{color:#fff;display:flex;align-items:center;gap:12px;padding:0 12px 38px;font-size:1.22rem}.sidebar-brand:hover{text-decoration:none}.sidebar-brand .brand-mark{background:#4172f2}.sidebar-brand small{display:block;color:#8290ae;font-weight:700;font-size:.6rem;letter-spacing:.12em}.side-links{display:flex;flex-direction:column;gap:3px}.side-links a{color:#aab7d0;font-size:.91rem;display:flex;align-items:center;gap:13px;padding:11px 14px;border-radius:9px;font-weight:575}.side-links a:hover{color:#fff;background:#1c2b45;text-decoration:none}.side-links a.active{color:#fff;background:#233655;font-weight:680;box-shadow:inset 3px 0 #7497ff}.nav-symbol{font-size:1.25rem;line-height:1;width:21px;text-align:center;color:#879dca}.sidebar-foot{margin-top:auto;border-top:1px solid #2c3950;padding:22px 13px 0;font-size:.77rem;color:#aab5cb}.sidebar-foot small{display:block;color:#8b9bb7;font-size:.78rem;margin:5px 0 0}.dot{display:inline-block;width:7px;height:7px;background:#a2adba;border-radius:50%;margin-right:7px}.dot.green{background:#30c99a}.content-area{flex:1;min-width:0}.admin-topbar{height:77px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:0 clamp(20px,3vw,48px);border-bottom:1px solid var(--line);background:white}.breadcrumb{font-weight:590;color:#344256;font-size:.9rem}.breadcrumb span{color:#bbc6d4;padding:0 7px}.top-actions{display:flex;align-items:center;gap:20px;font-size:.85rem}.top-actions .link{color:#4d6281;font-weight:560}.inline-form{margin:0}.top-actions .inline-form{display:inline-flex}.admin-content{max-width:1280px;padding:35px clamp(18px,3vw,48px) 60px;margin:0 auto}.page-heading{margin-bottom:25px}.page-heading h1{margin:0 0 7px}.page-heading p{margin:0;font-size:.93rem}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:16px;margin-bottom:23px}.stat-card{background:#fff;padding:24px;border:1px solid var(--line);border-radius:var(--radius);display:flex;flex-direction:column;gap:4px;box-shadow:var(--shadow)}.stat-card .label{font-size:.84rem;font-weight:620}.stat-card strong{font-size:clamp(1.9rem,2.3vw,2.4rem);line-height:1.3;font-weight:780;letter-spacing:-.045em}.stat-card small{color:#5b687e;font-size:.8rem}.progress-row{margin-bottom:21px}.progress-row .between{font-size:.89rem;font-weight:600;margin-bottom:9px}.progress-row progress{display:block;width:100%;height:9px;appearance:none;-webkit-appearance:none;border:0;border-radius:50px;overflow:hidden;background:#e7ebf5}.progress-row progress::-webkit-progress-bar{background:#e7ebf5}.progress-row progress::-webkit-progress-value{background:#537be9;border-radius:50px}.progress-row progress::-moz-progress-bar{background:#537be9;border-radius:50px}.two-panel{display:grid;grid-template-columns:minmax(250px,1fr) minmax(350px,1.45fr);gap:20px;align-items:start}.step-link{display:flex;align-items:center;gap:12px;border:1px solid transparent;padding:12px 9px;border-radius:10px;color:#293650;margin-bottom:5px}.step-link:hover,.step-link.selected{background:#f1f5ff;text-decoration:none}.step-link.selected{border-color:#dae4ff}.step-num{width:30px;height:30px;flex:0 0 30px;border-radius:8px;background:#e9eefb;color:#4564ad;display:grid;place-items:center;font-size:.78rem;font-weight:720}.step-link>span:nth-child(2){flex:1;min-width:0}.step-link b{display:block;overflow-wrap:anywhere;font-size:.85rem}.step-link small{display:block;font-size:.72rem;color:#8a95a9}.pill{font-size:.69rem;font-weight:700;background:#f0f2f7;color:#617085;border-radius:999px;padding:4px 8px;white-space:nowrap}.pill.on{background:#e2f7ed;color:#08734f}.pill.off{background:#fff1ee;color:#b6422b}.field-row{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:13px 0;border-bottom:1px solid #edf0f5}.field-row>div:first-child{min-width:0}.field-row b{display:block;font-size:.88rem;overflow-wrap:anywhere}.field-row small{display:block;color:#5c697b;font-size:.8rem;overflow-wrap:anywhere}.field-row:last-of-type{margin-bottom:20px}.empty{text-align:center;padding:22px 10px 27px}.empty p{margin:6px 0}.empty-symbol{display:inline-block;color:#a7b7d6;font-size:2rem}.table-wrap{overflow-x:auto}.table{width:100%;border-collapse:collapse;min-width:480px;font-size:.87rem}.table td,.table th{text-align:left;padding:12px 9px;border-bottom:1px solid #edf0f5;vertical-align:middle}.table thead th{font-size:.74rem;text-transform:uppercase;letter-spacing:.04em;color:#7f8b9d}.table td{color:#4d5c72}.table .inline-form{white-space:nowrap}.ok{color:var(--green)!important}.error{color:var(--red)!important}.response-card{padding:0}.response-card summary{padding:18px 22px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;cursor:pointer;list-style:none}.response-card summary::-webkit-details-marker{display:none}.response-card summary .muted{font-size:.82rem}.response-detail{border-top:1px solid var(--line);padding:20px 22px}.response-detail dl{display:grid;grid-template-columns:minmax(90px,140px) minmax(0,1fr);gap:8px 14px;font-size:.86rem;margin:0 0 20px;overflow-wrap:anywhere}.response-detail dt{color:#8190a5}.response-detail dd{margin:0;white-space:pre-wrap}.health-list{display:grid;grid-template-columns:1fr}.health-line{padding:12px 0;display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);font-size:.85rem}.health-line span{color:#72819a;text-align:right}.admin-footer{display:flex;justify-content:space-between;color:#9aa5b9;padding:0 clamp(18px,3vw,48px) 30px;font-size:.75rem}.mobile-nav,.mobile-brand{display:none}
@media(max-width:1100px){.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sidebar{width:215px;flex-basis:215px}.two-panel{grid-template-columns:minmax(220px,1fr) minmax(260px,1.25fr)}}
@media(max-width:800px){.app-frame{display:block}.sidebar{display:none}.mobile-brand{display:flex;align-items:center;gap:9px;font-size:1.05rem;font-weight:760}.mobile-brand .brand-mark{width:29px;height:29px;font-size:.91rem}.breadcrumb{display:none}.mobile-nav{display:flex;gap:5px;overflow-x:auto;scrollbar-width:thin;white-space:nowrap;padding:10px 14px;background:#fff;border-bottom:1px solid var(--line)}.mobile-nav a{color:#64728a;padding:8px 11px;font-size:.78rem;font-weight:680;border-radius:8px;flex:0 0 auto}.mobile-nav a.active{background:#edf2ff;color:var(--blue)}.admin-topbar{height:66px}.admin-content{padding:25px 18px 36px}.two-panel{grid-template-columns:1fr}.top-actions{gap:9px}.top-actions .link{font-size:.78rem}.admin-footer{padding:0 18px 25px}}
@media(max-width:480px){.shell{padding:18px}.site-header{height:67px}.header-right{font-size:.72rem}.form-shell{margin:25px auto 30px}.form-shell>.card{padding:21px}.form-header{align-items:start}.form-header h1{font-size:1.65rem}.step-counter{margin-top:3px;margin-bottom:0}.auth-panel{padding:26px 21px}.card{padding:20px}.stat-grid{gap:10px}.stat-card{padding:17px;min-height:133px}.stat-card strong{font-size:2rem}.stat-card small{font-size:.78rem}.form-grid{grid-template-columns:1fr;gap:0}.top-actions .link{display:none}.admin-footer span{display:none}.field-row{align-items:start}.field-row b{line-height:1.4}}

.form-progress{display:block;appearance:none;-webkit-appearance:none;width:100%;height:6px;border:none;border-radius:99px;margin:0 0 22px;overflow:hidden;background:#e6ebf3}.form-progress::-webkit-progress-bar{background:#e6ebf3}.form-progress::-webkit-progress-value{background:var(--blue);border-radius:99px}.form-progress::-moz-progress-bar{background:var(--blue);border-radius:99px}

.move-controls{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:-3px 0 20px}.loader{display:inline-block}.loader-ring{width:37px;height:37px;border:4px solid #dbe4f9;border-top-color:var(--blue);border-radius:50%;animation:rotate 1s linear infinite}.loader-dots{width:40px;height:12px;background:radial-gradient(circle closest-side,#335bda 90%,transparent) 0 50%/9px 9px no-repeat,radial-gradient(circle closest-side,#335bda 90%,transparent) 50% 50%/9px 9px no-repeat,radial-gradient(circle closest-side,#335bda 90%,transparent) 100% 50%/9px 9px no-repeat;animation:loader-fade 1s ease-in-out infinite}.loader-bar{width:80px;height:7px;border-radius:99px;background:linear-gradient(90deg,#335bda 0 40%,#dae3fc 40% 100%);background-size:200% 100%;animation:loader-bar-move 1.2s linear infinite}@keyframes loader-fade{50%{opacity:.3}}@keyframes loader-bar-move{to{background-position:-160% 0}}@media(prefers-reduced-motion:reduce){.loader{animation:none!important}}

.verify-panel{max-width:460px;margin:auto}.verify-panel h2{margin:12px 0 8px}.verify-panel p{margin:0 0 24px;color:#687489}

.field-editor{border-bottom:1px solid #ebeff5;padding:8px 0 14px;margin-bottom:4px}.field-editor summary{cursor:pointer;font-weight:600;color:#44639c;font-size:.82rem;padding:4px 0}.field-editor .inline-form{padding:15px 0 0;display:block}.field-editor summary:focus-visible{outline:2px solid #416ef0;outline-offset:3px}

.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Accessibility: keyboard-only content skip */
.skip-link{position:fixed;z-index:9999;top:12px;left:12px;transform:translateY(-200%);background:#fff;color:#182238;padding:10px 16px;border-radius:8px;border:2px solid #335bda;box-shadow:0 3px 12px #0003}.skip-link:focus{transform:none}

/* Connected-admin narrow viewport: avoid intrinsic widths escaping cards. */
.app-admin .admin-content pre{max-width:100%;overflow-x:auto;white-space:pre-wrap;overflow-wrap:anywhere}
.app-admin .admin-content pre code{white-space:pre-wrap;overflow-wrap:anywhere}
.app-admin .admin-content .btn{max-width:100%;white-space:normal;text-align:center;overflow-wrap:anywhere}

/* Long unbroken admin content: keep flex text inside its card at mobile and zoom. */
.app-admin .card-top > *,
.app-admin .health-line > *,
.app-admin .progress-row .between > * {
  min-width: 0;
  overflow-wrap: anywhere;
}
/* Allow compact topbar controls to wrap when page is magnified to 200%. */
@media (max-width:480px) {
  .app-admin .admin-topbar { height:auto; min-height:66px; flex-wrap:wrap; padding-block:12px; }
  .app-admin .top-actions { min-width:0; max-width:100%; }
}
/* Keep status tags readable, rather than clipped, under 200% text enlargement. */
.app-admin .card-top .tag { white-space:normal; overflow-wrap:anywhere; text-align:center; }

/* Authentication / onboarding: compact, typographic, no decorative emblem. */
.auth-layout{min-height:100dvh;display:grid;place-items:center;padding:24px 16px;background:#f8f9fa}
.auth-panel{width:min(100%,400px);padding:36px 34px;border:1px solid #e9e9e9;border-radius:12px;background:#fff;box-shadow:0 8px 30px rgba(17,24,39,.035)}
.auth-top{display:block;margin:0 0 33px;color:#111827;font-size:17px;font-weight:750;letter-spacing:-.035em}
.auth-panel h1{font-size:25px;line-height:1.24;letter-spacing:-.04em;margin:0 0 27px;color:#111827;font-weight:700}
.auth-panel .field{margin-bottom:19px}
.auth-panel .field label{font-size:13px;font-weight:620;color:#273241;margin:0 0 7px}
.auth-panel input:not([type=checkbox]){min-height:46px;border:1px solid #dce0e5;background:#fff;border-radius:8px;padding:10px 12px}
.auth-panel input:not([type=checkbox]):focus{border-color:#111827;box-shadow:0 0 0 3px rgba(17,24,39,.07)}
.auth-panel .btn.primary{background:#15191f;border-color:#15191f;color:#fff;min-height:47px;border-radius:8px;box-shadow:none;font-size:14px}
.auth-panel .btn.primary:hover{background:#32383f;border-color:#32383f}
.auth-field-note{display:block;color:#77808c;font-size:12px;margin-top:6px}
.auth-help{margin-top:23px;border-top:1px solid #eceef0;padding-top:17px;color:#606b77;font-size:13px}
.auth-help summary{cursor:pointer;list-style:none;display:inline-block;color:#556170;font-weight:580;text-decoration:underline;text-decoration-color:#bec5ce;text-underline-offset:3px}
.auth-help summary::-webkit-details-marker{display:none}
.auth-help summary:focus-visible{outline:2px solid #111827;outline-offset:4px;border-radius:2px}
.auth-help p{margin:11px 0 0;font-size:12.5px;line-height:1.6;color:#606b77;overflow-wrap:anywhere}
.auth-panel .auth-help strong{font-weight:600;color:#404a56}
.auth-panel .flash{margin:0 0 20px}
@media(max-width:420px){.auth-panel{padding:32px 24px}.auth-layout{padding:16px}.auth-top{margin-bottom:26px}.auth-panel h1{font-size:23px}}
@media(prefers-reduced-motion:reduce){.auth-panel .btn{transition:none}}
