:root{--navy:#142f44;--teal:#087e80;--muted:#647888;--line:#dce5ea;--bg:#f3f6f8}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--navy);font:16px/1.6 system-ui,-apple-system,"Segoe UI",sans-serif}a{color:var(--teal);text-decoration:none}a:hover{text-decoration:underline}header{height:84px;display:flex;align-items:center;gap:30px;padding:0 4%;background:white;border-bottom:1px solid var(--line)}header>a:last-child{margin-left:auto}.brand{font-size:28px;font-weight:850;letter-spacing:2px;color:var(--navy)}.brand span{display:inline-block;font-size:12px;letter-spacing:1px;color:var(--teal);margin-left:10px;border-left:1px solid var(--line);padding-left:12px}.header-note{color:var(--muted);font-size:14px}.account{margin-left:auto;display:flex;gap:20px;align-items:center;font-size:14px}.account form{margin:0}.layout{display:flex;max-width:1600px;margin:auto;min-height:calc(100vh - 140px)}aside{padding:42px 26px;width:250px;flex-shrink:0;border-right:1px solid var(--line);display:flex;flex-direction:column}nav{margin-top:20px}nav a{display:block;padding:13px 14px;margin-bottom:8px;font-size:14px;color:var(--navy);border-radius:10px}.nav-current{background:#deeeee;color:#066b6c;font-weight:650}.aside-bottom{margin-top:auto;padding-top:50px;color:var(--muted);font-size:13px}.aside-bottom small{font-size:11px}main{padding:44px;flex:1;min-width:0}.auth-main{display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(ellipse at 15% 20%,#d9eeee,transparent 60%);padding:48px 20px}.overline{font-size:11px;letter-spacing:1.8px;text-transform:uppercase;color:var(--teal);font-weight:700}h1{font-size:36px;letter-spacing:-1.2px;line-height:1.2;margin:10px 0 14px}h2{font-size:22px;letter-spacing:-.5px;margin:28px 0 18px}h3{font-size:17px;margin:0 0 4px}p{margin:8px 0 20px}.muted,.small{color:var(--muted)}.small{font-size:13px}.page-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:26px}.primary,button{border:0;border-radius:9px;font:inherit;cursor:pointer}.primary{display:inline-block;background:var(--teal);color:white;padding:12px 20px;font-weight:600;font-size:14px;text-align:center}.primary:hover{background:#066b6c;text-decoration:none}.link{background:none;color:var(--teal);padding:0;font-size:14px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:20px 0 28px}.stats article{background:white;border:1px solid var(--line);border-radius:13px;padding:20px 24px}.stats span{font-size:13px;color:var(--muted);display:block}.stats strong{display:block;font-size:32px;margin-top:8px}.stats .status-text{font-size:17px;padding-top:13px}.onboarding{display:flex;align-items:center;gap:26px;background:var(--navy);color:white;padding:30px;border-radius:16px}.onboarding p{color:#bdd0db;font-size:14px;max-width:350px}.onboarding h2{margin:8px 0;font-size:24px}.onboarding .overline{color:#69d4c1}.onboarding ol{margin-left:auto;font-size:13px;color:#c6d8e2;max-width:260px}.onboarding li{margin:12px 0}.onboard-icon{font-size:50px;color:#72d3c3}.count{color:var(--muted);font-size:15px;padding-left:8px}.camera-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.camera-card{background:white;border:1px solid var(--line);border-radius:14px;overflow:hidden;color:var(--navy)}.camera-card:hover{text-decoration:none;border-color:var(--teal)}.preview{aspect-ratio:16/10;background:#e5ecf0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:#607583;font-size:12px}.camera-icon{font-size:36px;line-height:1}.camera-info{padding:18px}.camera-info p{font-size:13px;color:var(--muted);margin-bottom:12px}.badge{display:inline-block;white-space:nowrap;border-radius:30px;background:#edf1f3;color:#5c6c76;padding:5px 11px;font-size:11px}.empty{grid-column:1/-1;background:white;border:1px dashed #c6d5dd;border-radius:14px;padding:32px;text-align:center}.empty p{color:var(--muted);margin-bottom:0;font-size:14px}.gateway-list article{background:white;padding:18px 24px;border:1px solid var(--line);border-radius:12px;display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.gateway-list p{margin:0;color:var(--muted);font-size:12px}.form-card{width:100%;max-width:510px;margin:0 auto;background:white;border:1px solid var(--line);border-radius:18px;padding:34px;box-shadow:0 15px 40px #142f4408}.form-card h1{font-size:32px}.form-card label{display:block;font-size:14px;font-weight:600;margin-bottom:6px}input,select{width:100%;padding:12px;border:1px solid #b9cbd5;border-radius:8px;background:white;color:var(--navy);font:inherit}input:focus,select:focus{outline:3px solid #9ed9d7;outline-offset:1px}.form-card p{margin:18px 0}.form-card .primary{width:100%}.helptext{display:block;font-size:12px;color:var(--muted);margin-top:5px}.form-card ul{padding-left:20px;font-size:12px;color:var(--muted)}.errorlist,.form-card .errorlist{color:#b22d36;background:#fff0f0;padding:10px 20px;border-radius:8px}.form-foot{display:flex;justify-content:space-between;gap:12px;font-size:13px}.message{border:1px solid #add8ca;background:#e8f7f0;border-radius:10px;padding:14px 20px;margin-bottom:20px;width:100%;max-width:1100px}.message.error{background:#fff0eb;border-color:#e6c2b4}.large-preview{min-height:320px;background:var(--navy);color:white;border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px;text-align:center}.large-preview p{color:#bfd0db;max-width:540px}.archive-placeholder{padding:10px 24px;background:white;border:1px solid var(--line);border-radius:12px;margin-top:24px}details{margin-top:30px;font-size:14px}summary{cursor:pointer;color:#8b3540}.danger{background:#a93240;color:white;padding:10px 16px}footer{padding:18px;text-align:center;font-size:11px;color:var(--muted);border-top:1px solid var(--line)}@media(max-width:1100px){aside{width:220px;padding:30px 16px}main{padding:30px}.camera-grid{grid-template-columns:repeat(2,1fr)}.onboarding ol,.onboard-icon{display:none}}@media(max-width:720px){header{height:68px;padding:0 20px}.brand{font-size:24px}.header-note{display:none}.account{font-size:12px;gap:12px}.layout{display:block}aside{width:auto;padding:16px 20px 0;border:0}.aside-bottom,aside>.overline{display:none}nav{display:flex;overflow:auto;margin:0;gap:8px}nav a{white-space:nowrap;font-size:12px;padding:10px}main{padding:24px 20px}.page-heading{align-items:flex-start;flex-direction:column;gap:6px}h1{font-size:30px}.stats{gap:8px}.stats article{padding:12px}.stats strong{font-size:25px}.stats span{font-size:11px}.stats .status-text{font-size:13px;padding-top:9px}.camera-grid{grid-template-columns:1fr}.onboarding{padding:24px}.form-card{padding:25px}.form-card h1{font-size:30px}.gateway-list article{gap:10px;padding:16px}.large-preview{min-height:260px;padding:22px}.large-preview h2{font-size:21px}.form-foot{flex-wrap:wrap}.auth-main{padding-top:32px}}

@media(max-width:720px){nav{display:grid;grid-template-columns:1fr 1fr;overflow:visible;gap:4px}nav a{margin-bottom:0;padding:9px 7px}}

/* IKIME brand theme 0.2 — shared with the existing IKIME interface */
:root{color-scheme:dark;--navy:#e3f1f7;--teal:#55ead5;--muted:#8cb0c1;--line:#244b5c;--bg:#061c29}
body{background:radial-gradient(ellipse at 80% 0%,#0b3545 0,transparent 58%),#051b28;background-attachment:fixed;color:#e3f1f7}
header{height:90px;background:rgba(5,25,37,.9);border-color:#214654;backdrop-filter:blur(18px)}
.brand{display:flex;align-items:center;gap:14px;line-height:1}.brand img{display:block;width:64px;height:64px;object-fit:contain;padding:3px}.brand span{margin:0;padding-left:16px;font-size:12px;font-weight:500;letter-spacing:4px;border-color:#2c5060;color:#69c5d4}.header-note{color:#8eb0c0}
.layout{min-height:calc(100vh - 145px)}aside{background:rgba(4,25,37,.55);border-color:#234451}nav a{color:#adcad8;border:1px solid transparent}nav a:hover{background:#113644;text-decoration:none;border-color:#2d606a}.nav-current{background:linear-gradient(110deg,#17474e,#10303e);color:#68f6df;border-color:#316977}.overline{color:#5ccbbb}
h1{font-weight:650;letter-spacing:-.8px}h2{font-weight:600}h3{font-weight:600}.primary{background:linear-gradient(110deg,#13ab99,#0a7f98);border:1px solid #219f9f;color:#f4ffff;box-shadow:0 5px 24px #00a99a16;border-radius:12px}.primary:hover{background:linear-gradient(110deg,#18bda9,#1095aa);box-shadow:0 6px 28px #00baa824}
.stats article,.camera-card,.gateway-list article,.archive-placeholder{background:linear-gradient(125deg,#102f3eeb,#082431e8);border-color:#2a5262;box-shadow:inset 0 1px 0 #b3f8ff07;border-radius:18px}.stats span{color:#8cb2c3}.stats .status-text{color:#9dbdcb;font-weight:500}.onboarding{background:radial-gradient(ellipse at 100% 0%,#15495166,transparent 65%),linear-gradient(125deg,#102f3e,#07222f);border:1px solid #2b5865;box-shadow:inset 0 1px 0 #c8ffff09;border-radius:20px}.onboarding p,.onboarding ol{color:#a7c5d3}.onboard-icon{color:#5fe9d1}.preview{background:radial-gradient(ellipse at center,#174450,#082431);color:#86afc1}.badge{color:#a2c3d1;background:#183b48;border:1px solid #315360}.empty{background:#09263380;border-color:#2c5666;color:#dceaf1}.empty p{color:#8bb0c1}.camera-card:hover{border-color:#40c1b7}.gateway-list p{color:#86acbd}
.auth-main{background:radial-gradient(ellipse at 25% 10%,#0e63602b,transparent 52%),radial-gradient(ellipse at 80% 80%,#10465833,transparent 58%);padding:36px 20px;justify-content:center}.form-card{background:linear-gradient(140deg,#113442e8,#07212fe8);border:1px solid #2d5968;box-shadow:0 24px 85px #00000030,inset 0 1px 0 #b2eafa0b;border-radius:24px;backdrop-filter:blur(18px)}.form-card h1{font-size:29px}.form-card label{color:#c1dce6;font-weight:500;font-size:14px}.form-card p{margin:17px 0}.form-card ul,.helptext{color:#8eafbf}input,select{background:#061d2b;border:1px solid #2d5264;color:#e2f4fa;border-radius:12px;padding:12px 14px;min-height:48px}input:focus,select:focus{outline:2px solid #2bd5bb;outline-offset:2px;border-color:#4acdbd}input::placeholder{color:#7398ab}input:-webkit-autofill{-webkit-text-fill-color:#e2f4fa;box-shadow:0 0 0 1000px #061d2b inset}
.login-card{max-width:460px;padding:26px 34px 22px}.login-brand{text-align:center}.login-brand img{display:block;object-fit:contain;width:132px;height:132px;margin:0 auto 12px;padding:6px;filter:drop-shadow(0 0 15px #14b4c322)}.login-brand .overline{font-size:11px;letter-spacing:4px;color:#80c4d4}.login-card h1{text-align:center;font-size:27px;margin-top:17px}.login-card .login-intro{text-align:center;font-size:14px;margin:8px 0 22px}.login-card .primary{min-height:48px;margin-top:2px}.login-card .form-foot{margin-top:18px;align-items:center}.login-card .resend-link{text-align:center;margin:18px 0 0;line-height:1.5}.login-card .resend-link a{color:#91b7c7;font-size:12px}.form-foot{font-size:13px}.message{background:#103e3a;border-color:#2c7769;color:#c8ffed}.message.error,.form-card .errorlist,.errorlist{background:#41262d;border-color:#87565c;color:#ffd1ce}.large-preview{background:radial-gradient(ellipse at center,#113b48,#041d2b);border:1px solid #2c5666;border-radius:20px}.large-preview p{color:#9cbfce}.danger{background:#783846;border:1px solid #af5c6b}.aside-bottom{color:#789daf}summary{color:#eaa5ae}footer{background:#04192566;border-color:#214351;color:#7599ab}
@media(max-width:720px){header{height:76px;padding:0 20px}.brand{gap:8px}.brand img{width:54px;height:54px}.brand span{font-size:10px;padding-left:12px;letter-spacing:3px}aside{background:transparent}.auth-main{padding:22px 16px 26px}.form-card{padding:24px 22px;border-radius:22px}.login-card{padding:22px 22px 20px}.login-brand img{width:110px;height:110px;margin-bottom:10px}.login-card h1{font-size:25px;margin-top:15px}.login-card .login-intro{margin-bottom:20px}.login-card .form-foot{font-size:12px;gap:12px;flex-wrap:wrap}.form-card .primary{min-height:48px}main{padding:26px 18px}.stats article{padding:14px 10px}.onboarding{padding:24px}.stats strong{font-weight:550}.layout{min-height:calc(100svh - 130px)}}
