:root{--crisis-red:#ff3b30;--crisis-red-glow:#ff3b3080;--alert-orange:#ff9500;--alert-orange-glow:#ff950066;--safety-green:#34c759;--safety-green-glow:#34c75966;--info-blue:#007aff;--info-blue-glow:#007aff66;--bg-deep:#050505;--bg-surface:#121214;--bg-elevated:#1c1c1e;--bg-accent:#252528;--text-primary:#f2f2f7;--text-secondary:#aeaeb2;--text-tertiary:#636366;--glass-bg:#1c1c1e99;--glass-border:#ffffff14;--glass-blur:blur(20px);--glass-shine:linear-gradient(110deg, #fff0 0%, #ffffff08 50%, #fff0 100%);--shadow-sm:0 2px 8px #0006;--shadow-md:0 8px 16px #00000080;--shadow-lg:0 16px 32px #0009;--shadow-xl:0 32px 64px #000000b3;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--radius-sm:8px;--radius-md:16px;--radius-lg:24px;--radius-full:9999px}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-deep);color:var(--text-primary);-webkit-font-smoothing:antialiased;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.5;overflow-x:hidden}h1,h2,h3{letter-spacing:-.02em;font-weight:700}.card{background:var(--bg-surface);border:1px solid var(--glass-border);border-radius:var(--radius-md);padding:var(--space-md);transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.card:hover{box-shadow:var(--shadow-lg);border-color:#ffffff26;transform:translateY(-4px)}.card:after{content:"";background:var(--glass-shine);pointer-events:none;width:200%;height:100%;transition:left .6s;position:absolute;top:0;left:-100%}.card:hover:after{left:100%}.btn{border-radius:var(--radius-sm);cursor:pointer;letter-spacing:.02em;border:1px solid #0000;justify-content:center;align-items:center;padding:10px 24px;font-size:.95rem;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex}.btn-primary{background-color:var(--info-blue);color:#fff;box-shadow:0 4px 12px var(--info-blue-glow)}.btn-primary:hover{box-shadow:0 6px 16px var(--info-blue-glow);background-color:#1a8bff;transform:translateY(-1px)}.btn-danger{background-color:var(--crisis-red);color:#fff;box-shadow:0 4px 12px var(--crisis-red-glow)}.btn-danger:hover{box-shadow:0 6px 16px var(--crisis-red-glow);background-color:#ff4d42;transform:translateY(-1px)}.btn-warning{background-color:var(--alert-orange);color:#000;box-shadow:0 4px 12px var(--alert-orange-glow)}.btn:active{transform:scale(.96)}@keyframes pulse{0%{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.02)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.pulse{animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}.animate-slide-up{animation:.6s cubic-bezier(.2,.8,.2,1) forwards slideUp}.dashboard-grid{gap:var(--space-lg);padding:var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));display:grid}@media (width<=768px){.dashboard-grid{grid-template-columns:1fr}}.app-container{background-color:var(--bg-deep);z-index:1;min-height:100vh;position:relative}.landscape-bg{z-index:-1;opacity:.45;filter:brightness(.7)contrast(1.1);width:100%;height:100%;transition:opacity 1.5s ease-in-out, transform 20s linear infinite alternate;background:url(/assets/resort_landscape-C-jb96En.png) 50%/cover no-repeat;position:fixed;top:0;left:0}.landscape-overlay{z-index:-1;background:radial-gradient(circle at center, transparent 30%, var(--bg-deep) 100%), linear-gradient(to bottom, transparent 0%, var(--bg-deep) 100%);pointer-events:none;width:100%;height:100%;position:fixed;top:0;left:0}.glass-panel{background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);box-shadow:var(--shadow-md)}.text-gradient{background:linear-gradient(135deg,#fff 0%,#aaa 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text}.badge{border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.05em;padding:4px 10px;font-size:.75rem;font-weight:700}.badge-info{background:var(--info-blue-glow);color:var(--info-blue);border:1px solid var(--info-blue)}.badge-danger{background:var(--crisis-red-glow);color:var(--crisis-red);border:1px solid var(--crisis-red)}.badge-success{background:var(--safety-green-glow);color:var(--safety-green);border:1px solid var(--safety-green)}.login-container{min-height:100vh;padding:var(--space-lg);background:#000;justify-content:center;align-items:center;font-family:Inter,sans-serif;display:flex;position:relative;overflow:hidden}.login-bg-grid{perspective:1000px;opacity:.3;pointer-events:none;background-image:linear-gradient(#007aff0d 1px,#0000 1px),linear-gradient(90deg,#007aff0d 1px,#0000 1px);background-size:50px 50px;width:100%;height:100%;position:absolute;top:0;left:0;transform:rotateX(60deg)translateY(-100px)}.login-glow{background:radial-gradient(circle, var(--info-blue-glow) 0%, transparent 70%);filter:blur(80px);opacity:.15;pointer-events:none;border-radius:50%;width:600px;height:600px;animation:20s ease-in-out infinite alternate floatGlow;position:absolute}@keyframes floatGlow{0%{transform:translate(-10%,-10%)}to{transform:translate(10%,10%)}}.login-wrapper{-webkit-backdrop-filter:blur(25px);backdrop-filter:blur(25px);border:1px solid var(--glass-border);border-radius:var(--radius-lg);z-index:10;background:#0a0a0ccc;width:100%;max-width:1000px;min-height:600px;display:flex;overflow:hidden;box-shadow:0 40px 100px #000c}.login-side-info{padding:var(--space-2xl);border-right:1px solid var(--glass-border);background:linear-gradient(135deg,#007aff1a 0%,#0000 100%);flex-direction:column;flex:1;justify-content:space-between;display:flex;position:relative}.login-side-info:after{content:"";opacity:.03;pointer-events:none;background:url(https://www.transparenttextures.com/patterns/carbon-fibre.png);width:100%;height:100%;position:absolute;top:0;left:0}.login-form-area{padding:var(--space-2xl);flex-direction:column;flex:1.2;justify-content:center;display:flex}.system-status-indicator{align-items:center;gap:var(--space-sm);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.1em;font-family:Monaco,Consolas,monospace;font-size:.75rem;display:flex}.status-dot{background:var(--safety-green);width:8px;height:8px;box-shadow:0 0 10px var(--safety-green-glow);border-radius:50%}.login-branding h1{margin-bottom:var(--space-sm);font-size:3rem}.login-branding p{color:var(--text-secondary);font-size:1.1rem;line-height:1.6}.tech-specs{gap:var(--space-md);margin-top:var(--space-2xl);grid-template-columns:1fr 1fr;display:grid}.spec-item{padding:var(--space-sm) var(--space-md);border:1px solid var(--glass-border);border-radius:var(--radius-sm);background:#ffffff05}.spec-label{color:var(--text-tertiary);text-transform:uppercase;margin-bottom:2px;font-size:.65rem;display:block}.spec-value{color:var(--info-blue);font-size:.85rem;font-weight:600}.role-cards{gap:var(--space-md);margin-bottom:var(--space-xl);grid-template-columns:repeat(3,1fr);display:grid}.role-card{padding:var(--space-md);border:1px solid var(--glass-border);border-radius:var(--radius-md);cursor:pointer;align-items:center;gap:var(--space-xs);background:#ffffff08;flex-direction:column;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.role-card:hover{background:#ffffff0f;border-color:#fff3;transform:translateY(-2px)}.role-card.active{border-color:var(--info-blue);background:#007aff1a;box-shadow:inset 0 0 15px #007aff33}.role-card.active:before{content:"";background:var(--info-blue);width:100%;height:3px;box-shadow:0 -5px 15px var(--info-blue-glow);position:absolute;bottom:0;left:0}.role-card-icon{color:var(--text-secondary);transition:color .3s}.role-card.active .role-card-icon{color:var(--info-blue)}.role-card-label{text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:700}.input-container{margin-bottom:var(--space-lg);position:relative}.input-icon{color:var(--text-tertiary);pointer-events:none;transition:color .3s;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.login-field{border:1px solid var(--glass-border);color:#fff;background:#ffffff0a;border-radius:12px;width:100%;padding:14px 14px 14px 44px;font-size:1rem;transition:all .3s}.login-field:focus{border-color:var(--info-blue);box-shadow:0 0 0 4px var(--info-blue-glow);background:#ffffff12;outline:none}.login-field:focus+.input-icon{color:var(--info-blue)}.btn-login{background:var(--info-blue);color:#fff;height:56px;margin-top:var(--space-sm);border-radius:12px;font-size:1.1rem;font-weight:700;position:relative;overflow:hidden}.btn-login:after{content:"";background:linear-gradient(90deg,#0000,#fff3,#0000);width:100%;height:100%;transition:left .6s;position:absolute;top:0;left:-100%}.btn-login:hover:after{left:100%}@media (width<=900px){.login-wrapper{flex-direction:column;max-width:450px}.login-side-info{padding:var(--space-xl);border-right:none;border-bottom:1px solid var(--glass-border)}.tech-specs{display:none}}.fireshield-container{flex-direction:column;width:100%;height:calc(100vh - 80px);display:flex;position:relative;overflow:hidden}.fireshield-step-container{flex:1;width:100%;height:100%;position:relative}.fireshield-overlay{padding:var(--space-xl);z-index:10;align-items:center;gap:var(--space-md);background:linear-gradient(#0000 0%,#000c 100%);flex-direction:column;display:flex;position:absolute;bottom:0;left:0;right:0}.fireshield-prompt{background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-full);border:1px solid var(--glass-border);color:var(--text-primary);box-shadow:var(--shadow-md);font-size:.9rem;font-weight:500}.btn-fire-report{background:var(--crisis-red);color:#fff;border-radius:var(--radius-lg);text-transform:uppercase;letter-spacing:.05em;justify-content:center;align-items:center;gap:var(--space-md);width:100%;max-width:400px;height:80px;box-shadow:0 0 30px var(--crisis-red-glow);cursor:pointer;border:none;font-size:1.5rem;font-weight:800;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex}.btn-fire-report:hover{box-shadow:0 0 50px var(--crisis-red-glow);transform:translateY(-4px)scale(1.02)}.btn-fire-report:active{transform:scale(.95)}.location-confirm-card{bottom:var(--space-lg);left:var(--space-lg);right:var(--space-lg);z-index:20;max-width:500px;margin:0 auto;position:absolute}.address-box{padding:var(--space-md);border-radius:var(--radius-md);margin-bottom:var(--space-lg);border:1px solid var(--glass-border);background:#ffffff0d}.address-label{color:var(--text-secondary);text-transform:uppercase;margin-bottom:4px;font-size:.7rem}.address-text{font-size:1.1rem;font-weight:600}.fireshield-details-view{padding:var(--space-lg);max-width:600px;height:100%;margin:0 auto;overflow-y:auto}.fire-type-grid{gap:var(--space-md);margin:var(--space-lg) 0;grid-template-columns:repeat(2,1fr);display:grid}.fire-type-card{background:var(--bg-accent);border-radius:var(--radius-md);padding:var(--space-md);align-items:center;gap:var(--space-sm);cursor:pointer;border:2px solid #0000;flex-direction:column;transition:all .2s;display:flex}.fire-type-card.active{border-color:var(--crisis-red);background:var(--crisis-red-glow)}.image-upload-zone{border:2px dashed var(--glass-border);border-radius:var(--radius-md);padding:var(--space-xl);text-align:center;margin-bottom:var(--space-lg);cursor:pointer;transition:border-color .2s}.image-upload-zone:hover{border-color:var(--text-secondary)}.injury-switch-container{background:var(--bg-accent);padding:var(--space-md);border-radius:var(--radius-md);margin-bottom:var(--space-lg);justify-content:space-between;align-items:center;display:flex}.switch{width:60px;height:34px;display:inline-block;position:relative}.switch input{opacity:0;width:0;height:0}.slider{cursor:pointer;background-color:var(--bg-elevated);border-radius:34px;transition:all .4s;position:absolute;inset:0}.slider:before{content:"";background-color:#fff;border-radius:50%;width:26px;height:26px;transition:all .4s;position:absolute;bottom:4px;left:4px}input:checked+.slider{background-color:var(--crisis-red)}input:checked+.slider:before{transform:translate(26px)}.comment-box{background:var(--bg-accent);border:1px solid var(--glass-border);border-radius:var(--radius-md);width:100%;padding:var(--space-md);color:#fff;margin-bottom:var(--space-xl);resize:vertical;min-height:100px}.comment-box:focus{border-color:var(--crisis-red);outline:none}
