.student-page{background:#f1f7fa;color:#133149;min-height:100vh;font-family:Inter,system-ui,sans-serif}.student-page *{box-sizing:border-box}.student-header{background:#05243c;padding:22px max(24px,calc((100vw - 1000px)/2));display:flex;align-items:center;justify-content:space-between;gap:18px}.student-header a{color:#c7f6f7;text-decoration:none;display:flex;align-items:center;gap:12px}.jorte-brand{font-size:32px;letter-spacing:4px;font-weight:700}.jorte-brand small{display:block;font-size:10px;letter-spacing:4px}.jorte-mark{font-size:40px;color:#32c6cf;border:2px solid #2194b2;line-height:1;border-radius:12px;padding:5px 13px}.student-wrap{max-width:1000px;margin:auto;padding:32px 24px}.student-hero{text-align:center;padding:22px 8px 30px}.student-eyebrow{font-size:11px;letter-spacing:2px;color:#0b7b89;font-weight:700}.student-hero h1{font-size:42px;line-height:1.15;margin:16px 0}.student-hero h1 span{display:block;font-size:26px;margin-top:9px}.student-hero p{color:#536f80;line-height:1.6}.student-benefits{display:flex;justify-content:center;gap:24px;margin-top:24px;font-size:12px}.student-benefits span{display:flex;align-items:center;gap:6px}.student-steps{display:flex;gap:8px;margin:0 0 32px}.student-steps button{flex:1;background:#e4eef3;border:1px solid #d1e1e9;border-radius:12px;padding:12px 8px;display:flex;align-items:center;gap:8px;color:#516979;font-size:12px;cursor:pointer}.student-steps button span{display:flex;padding:8px;background:#fff;border-radius:50%}.student-steps button.active{background:#06314b;color:#fff;border-color:#06314b}.student-steps button.active span{background:#117a92;color:#fff}.student-step-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px}.student-step-heading small{font-size:10px;letter-spacing:2px;color:#0a8292;font-weight:700}.student-step-heading h2{font-size:26px;margin:5px 0}.student-step-heading>span{font-size:11px;color:#607687}.intake-card{border:1px solid #d1e2e9;border-radius:17px;background:#fff;padding:25px;margin-bottom:20px;box-shadow:0 4px 16px #08294005}.intake-card h3,.intake-card summary{font-size:16px;margin:0 0 21px;font-weight:700;color:#083e58}.intake-card h3{border-left:4px solid #18abb9;padding-left:12px}.intake-card summary{cursor:pointer;margin-bottom:0}.intake-card details[open]>summary{margin-bottom:20px}.intake-card summary small{display:block;color:#728899;font-size:11px;margin:6px 0;font-weight:400}.intake-note{font-size:12px;line-height:1.6;color:#657b89;margin-top:-8px;margin-bottom:22px}.intake-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.intake-field{min-width:0}.intake-field.wide{grid-column:1/-1}.intake-field label,.intake-field legend,.private-link>label{display:block;font-size:12px;font-weight:600;margin-bottom:8px;line-height:1.5}.intake-field label>span{color:#0e8192}.intake-field input,.intake-field select,.intake-field textarea,.private-link input{width:100%;min-height:46px;border:1px solid #cbdce4;background:#fbfdfe;border-radius:8px;padding:11px 12px;font:inherit;font-size:14px;color:#183d52}.intake-field textarea{resize:vertical}.intake-field input:focus,.intake-field select:focus,.intake-field textarea:focus{outline:2px solid #51bac5;outline-offset:2px}.intake-field fieldset{border:0;padding:0;margin:0;min-width:0}.intake-choices{display:flex;flex-wrap:wrap;gap:8px;max-height:270px;overflow-y:auto;padding:3px}.intake-choices label{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:400;border:1px solid #d6e4eb;border-radius:8px;padding:11px;margin:0;background:#f8fbfd;cursor:pointer;min-height:44px}.intake-choices input,.intake-consent input{width:17px;min-height:17px;height:17px;flex-shrink:0;accent-color:#078793}.intake-choices label.selected{background:#e8f7f6;border-color:#279dac;color:#07545f}.intake-summary>div{display:grid;grid-template-columns:1fr 1fr;gap:14px}.intake-summary p{font-size:14px;margin:0;line-height:1.7}.intake-summary p small{display:block;font-size:10px;color:#728896;letter-spacing:1px}.intake-summary>p{font-size:12px;margin-top:20px;color:#607783}.intake-consent{display:flex;gap:11px;align-items:flex-start;font-size:13px;line-height:1.6}.intake-save>p{font-size:12px;line-height:1.6;color:#6a808d}.private-link{margin-top:22px}.private-link>div{display:flex;gap:8px}.private-link input{font-size:12px;min-width:0}.private-link button,.intake-history button,.intake-error button{background:#e7f3f5;border:0;border-radius:8px;padding:10px;display:flex;align-items:center;gap:6px;cursor:pointer;color:#065364}.private-link>small{font-size:10px;word-break:break-all;display:block;margin-top:8px;color:#687e89}.intake-actions{display:flex;gap:12px;justify-content:space-between;background:#f1f7faf5;position:sticky;bottom:0;padding:16px 0 max(16px,env(safe-area-inset-bottom));z-index:2}.intake-actions button{min-height:48px;border:1px solid #cbdfe7;border-radius:9px;padding:12px 18px;display:flex;align-items:center;justify-content:center;gap:8px;font-weight:600;font-size:13px;background:#fff;color:#15475d;cursor:pointer}.intake-actions .intake-save-button{background:#057987;border-color:#057987;color:#fff}.intake-actions .intake-next{background:#06344e;color:#fff;border-color:#06344e}.student-page button:disabled{opacity:.5;cursor:not-allowed}.intake-success,.intake-error{padding:15px 18px;border-radius:9px;margin-bottom:20px;font-size:13px;line-height:1.6;display:flex;gap:9px;align-items:center}.intake-success{background:#daf3e8;color:#155e49}.intake-error{background:#ffeded;color:#9b2525}.intake-history{margin-top:22px;border-top:1px solid #deebf0;padding-top:18px}.intake-history summary{font-size:13px}.intake-history details{margin-top:12px}.intake-history>div{padding:14px 0;border-bottom:1px solid #e1ebee;font-size:12px}.intake-history span{display:block;color:#6e8390;margin-top:4px}.intake-record-actions{display:flex;justify-content:space-between;gap:12px;padding:18px 0}.intake-record-actions button{border:0;background:none;color:#57717f;font-size:12px;cursor:pointer}.student-footer{text-align:center;color:#6d8490;font-size:12px;margin:28px 0}.student-page input[type=checkbox]{padding:0}.student-header>a:last-child{font-size:12px;letter-spacing:0}@media(max-width:640px){.student-header{padding:17px 18px}.jorte-brand{font-size:25px}.jorte-mark{font-size:29px;padding:5px 10px}.jorte-brand small{font-size:8px;letter-spacing:3px}.student-wrap{padding:22px 14px}.student-hero{padding:13px 4px 24px}.student-hero h1{font-size:31px}.student-hero h1 span{font-size:20px;line-height:1.3}.student-hero p{font-size:13px}.student-benefits{gap:12px;flex-wrap:wrap;font-size:10px}.student-steps{gap:5px;margin-bottom:24px}.student-steps button{justify-content:center;padding:9px 3px}.student-steps button b{display:none}.student-steps button span{padding:7px}.student-step-heading{align-items:flex-start}.student-step-heading h2{font-size:23px}.student-step-heading>span{max-width:100px;font-size:10px;line-height:1.5}.intake-card{padding:20px 16px;border-radius:13px}.intake-card h3,.intake-card summary{font-size:15px;line-height:1.5}.intake-grid{grid-template-columns:1fr;gap:18px}.intake-field input,.intake-field select,.intake-field textarea{font-size:16px}.intake-actions{gap:7px}.intake-actions button{padding:11px 10px;font-size:12px}.intake-actions svg{width:15px}.intake-save-button{flex:1}.intake-summary>div{grid-template-columns:1fr}.intake-record-actions{flex-direction:column;align-items:center}.private-link>div{flex-wrap:wrap}.private-link input{flex:1;min-width:160px}}.student-header .jorte-brand img{width:220px;max-width:46vw;height:auto;display:block}.intake-branch-groups,.intake-route-groups{display:grid;gap:18px}.intake-branch-group,.intake-route-group{min-width:0;margin:0;padding:20px;border:1px solid #cee1e9;border-radius:12px;background:#f4fafc}.intake-branch-group legend,.intake-route-group legend{font-size:13px;font-weight:700;padding:0 8px;color:#06465e}.intake-branch-row{display:grid;grid-template-columns:minmax(0,1fr) 130px;gap:14px;margin-bottom:16px}.intake-branch-row:last-child{margin-bottom:0}.branch-tone-0{background:#fff1f3}.branch-tone-1{background:#fff6ea}.branch-tone-2{background:#ecfaf5}.branch-tone-3{background:#edf7ff}.branch-tone-4{background:#f3f0fc}.branch-tone-5{background:#fff3ef}.student-steps button:focus-visible,.student-page button:focus-visible{outline:3px solid #26aaba;outline-offset:3px}body:has(.student-page){margin:0}.student-hero{background:radial-gradient(ellipse at top,#e3f8fb,transparent 70%);border-radius:24px}.student-step-heading small{display:block}.intake-actions{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}@media(max-width:640px){.intake-branch-group,.intake-route-group{padding:16px 12px}.intake-branch-row{grid-template-columns:minmax(0,1fr) 105px;gap:10px}.student-header .jorte-brand img{width:175px}.student-hero h1{font-size:32px}.intake-route-group .intake-grid{grid-template-columns:1fr 1fr}.intake-route-group .intake-field:last-child{grid-column:1/-1}}.intake-review{margin-top:18px}.intake-review summary{font-size:13px;margin-bottom:16px}.intake-review h4{font-size:13px;margin:22px 0 12px}.intake-review dl{margin:0}.intake-review dl>div{border-bottom:1px solid #e5eef2;padding:10px 0;display:grid;grid-template-columns:1fr 1fr;gap:12px;font-size:12px;line-height:1.6;overflow-wrap:anywhere}.intake-review dt{color:#617783}.intake-review dd{margin:0;color:#173a4e}@media(max-width:640px){.intake-review dl>div{grid-template-columns:1fr;gap:4px}}.intake-download{display:flex;justify-content:flex-end;margin:18px 0}.intake-download button{display:flex;align-items:center;justify-content:center;gap:9px;background:#e1f1f4;border:1px solid #b9dce4;color:#075469;padding:14px 20px;border-radius:10px;font:inherit;font-size:13px;font-weight:600;min-height:48px;cursor:pointer}@media(max-width:640px){.intake-download button{width:100%}}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,sans-serif;color:#15364b;background:#f1f7fa}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}a{color:#087486}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #29b6c1;outline-offset:3px}.admin-login{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(ellipse at top,#d2f2f3,#eef5f9 65%)}.admin-login form{width:100%;max-width:420px;background:#fff;padding:32px;border-radius:18px;box-shadow:0 12px 60px #12344414}.admin-login img{width:220px;border-radius:8px;display:block;margin:0 auto 28px}.admin-lock{color:#128999;background:#e5f5f5;width:52px;height:52px;border-radius:14px;display:grid;place-items:center}.admin-login h1{font-size:27px;margin:20px 0 10px}.admin-login p{color:#647e8b;font-size:14px;line-height:1.6}.admin-login label{display:block;font-size:13px;margin-top:28px;font-weight:600}.admin-login input{width:100%;height:48px;border:1px solid #c6dce5;border-radius:8px;padding:12px;margin:8px 0 20px;font-size:16px}.admin-login button{width:100%;background:#087b89;color:#fff;border:0;padding:14px;border-radius:8px;font-weight:600}.admin-header{background:#05243c;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px max(22px,calc((100vw - 1180px)/2));color:#9fd4dc}.admin-header img{width:180px;display:block}.admin-header>span{font-size:11px;letter-spacing:2px}.admin-header button{border:1px solid #3f657c;color:#fff;background:transparent;display:flex;align-items:center;gap:8px;border-radius:8px;padding:12px;font-size:12px}.admin-wrap{max-width:1180px;margin:auto;padding:38px 24px}.admin-title{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:20px 0 28px}.admin-title h1{font-size:32px;line-height:1.2;margin:10px 0;overflow-wrap:anywhere}.admin-title p{font-size:13px;color:#607987;line-height:1.7}.admin-eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;color:#0b8390}.admin-count{background:#dff0f2;border-radius:30px;padding:12px 18px;font-size:13px;white-space:nowrap}.admin-toolbar{display:flex;gap:12px;margin-bottom:28px;align-items:center}.admin-toolbar label{display:flex;align-items:center;gap:10px;flex:1;background:#fff;border:1px solid #c9dce5;border-radius:10px;padding:0 14px;min-width:0}.admin-toolbar input{height:48px;border:0;background:transparent;width:100%;min-width:0;font-size:14px;outline:none}.admin-toolbar select,.admin-toolbar>button,.admin-pagination button,.admin-buttons button{background:#fff;border:1px solid #c9dce5;border-radius:8px;padding:13px;color:#17465d;font-size:13px;min-height:46px}.admin-list{display:grid;grid-template-columns:1fr 1fr;gap:18px}.admin-student-card{background:#fff;border:1px solid #d0e0e9;border-radius:14px;padding:22px;min-width:0}.admin-card-top{display:flex;justify-content:space-between;gap:12px}.admin-card-top h2{font-size:19px;margin:0 0 7px;overflow-wrap:anywhere}.admin-card-top a{font-size:14px;text-decoration:none}.admin-card-top>span{font-size:10px;color:#6d8291;line-height:1.8;text-align:right}.admin-card-top>span b{font-size:11px;font-weight:500;white-space:nowrap}.admin-student-card dl{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:22px 0}.admin-student-card dl>div:first-child{grid-column:1/-1}.admin-student-card dt,.admin-record dt{font-size:11px;color:#6a8190;margin-bottom:5px}.admin-student-card dd{font-size:13px;margin:0;overflow-wrap:anywhere;line-height:1.6}.admin-open{display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid #badde3;border-radius:8px;padding:12px;background:#eef8f9;text-decoration:none;font-size:13px;font-weight:600}.admin-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:30px 0;font-size:12px;color:#587583}.admin-error{background:#ffe9e9;padding:14px;border-radius:9px;color:#9e3030!important;line-height:1.6;font-size:13px}.admin-empty{background:#fff;padding:36px;text-align:center;border-radius:12px;color:#64808d}.admin-back{display:inline-flex;gap:7px;align-items:center;font-size:13px;text-decoration:none}.admin-buttons{display:flex;gap:10px}.admin-buttons button{display:flex;align-items:center;gap:8px;white-space:nowrap}.admin-record section{background:#fff;padding:24px;border:1px solid #d5e4eb;border-radius:14px;margin-bottom:18px}.admin-record h2{font-size:17px;margin:0 0 22px;border-left:4px solid #13a7b6;padding-left:12px}.admin-record dl{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:0}.admin-record dl>div{min-width:0}.admin-record dd{margin:0;font-size:14px;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere}.admin-app .student-header,.admin-app .student-hero{display:none}.admin-app .student-wrap{padding-top:10px}.admin-app .student-page{min-height:0}@media(max-width:650px){.admin-header{padding:14px}.admin-header img{width:135px}.admin-header>span{display:none}.admin-wrap{padding:22px 14px}.admin-title{flex-wrap:wrap;align-items:flex-start;margin-top:12px}.admin-title h1{font-size:27px}.admin-toolbar{flex-wrap:wrap}.admin-toolbar label{flex-basis:100%}.admin-toolbar select{flex:1}.admin-toolbar input{font-size:16px}.admin-list{grid-template-columns:1fr}.admin-student-card{padding:18px}.admin-card-top>span b{white-space:normal}.admin-record section{padding:20px 16px}.admin-record dl{grid-template-columns:1fr}.admin-buttons{width:100%}.admin-buttons button{flex:1;justify-content:center}.admin-login form{padding:26px}}
