:root{--surface:#fff;--surface-muted:#f2f7fb;--surface-clinical:#e5f8f1;--surface-blue:#eaf4ff;--surface-cyan:#e8fbff;--surface-lilac:#f0edff;--surface-amber:#fff2cd;--surface-peach:#fff1e8;--surface-rose:#fff0f2;--line:#d4e5ea;--line-strong:#b4cbd3;--text:#13242b;--text-muted:#4a626d;--text-subtle:#768a93;--primary:#0d9488;--primary-strong:#0b625b;--primary-soft:#dcf8f2;--primary-soft-border:#67d5c6;--secondary:#1d6fff;--secondary-strong:#164bb4;--secondary-soft:#e6f0ff;--accent:#7c5cff;--accent-strong:#5736ce;--accent-soft:#f0eeff;--warning:#b76300;--warning-strong:#8f4500;--warning-soft:#ffedbd;--success:#0f8f4c;--success-soft:#e0f8ea;--danger:#b91c1c;--danger-soft:#fff1f0;--focus-ring:#0d94883d;--font-sans:-apple-system, BlinkMacSystemFont, "SF Pro Text", "PingFang SC", "Microsoft YaHei", "Segoe UI", sans-serif;--font-mono:"SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;color:var(--text);background:var(--surface-muted);font-family:var(--font-sans);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html{background:var(--surface-muted);min-width:320px}body{min-width:320px;min-height:100dvh;margin:0}#root{min-height:100dvh}button,input,select,textarea{font-family:inherit}button{-webkit-tap-highlight-color:transparent}a{color:inherit}.workspace-shell{background:var(--surface-muted);min-height:100dvh}.phone-shell{background:var(--surface-muted);width:min(430px,100%);min-height:100dvh;margin:0 auto;position:relative;overflow:visible}.phone-screen{min-height:100dvh;padding:max(16px, env(safe-area-inset-top)) 14px calc(96px + env(safe-area-inset-bottom));background:linear-gradient(135deg, #0d948824 0 120px, #1d6fff1a 120px 210px, #ffedbda3 210px 280px, #f2f7fb00 360px), linear-gradient(180deg, #f0edff8a 0, #f2f7fb00 260px), var(--surface-muted)}.phone-screen::-webkit-scrollbar{display:none}.center-page{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:100%;padding:32px 16px;display:flex}.center-page svg{color:var(--accent)}.center-page h1{color:var(--text);margin:0;font-size:24px;font-weight:700}.center-page p{color:var(--text-muted);font-size:14px}.auth-page{flex-direction:column;gap:16px;display:flex}.auth-hero{border:1px solid var(--line);background:linear-gradient(135deg, #dcf8f2f5 0%, #e8fbffe6 48%, #e6f0ffdb 100%), var(--surface);text-align:center;border-radius:10px;flex-direction:column;align-items:center;gap:12px;padding:32px 16px;display:flex}.auth-hero svg{color:var(--primary)}.auth-hero h1{color:var(--text);margin:0;font-size:26px;font-weight:700}.auth-hero p{color:var(--text-muted);margin:0;font-size:14px;line-height:1.6}.auth-bind-card{border:1px solid var(--primary-soft-border);background:linear-gradient(135deg, var(--primary-soft), var(--surface-blue));border-radius:10px;gap:8px;padding:14px 16px;display:grid}.auth-bind-card div{justify-content:space-between;align-items:center;gap:12px;display:flex}.auth-bind-card span,.auth-bind-card small{color:var(--text-muted);font-size:12px;line-height:1.5}.auth-bind-card strong{min-width:0;color:var(--primary-strong);font-family:var(--font-mono);text-align:right;word-break:break-all;font-size:12px;font-weight:700}.form-panel{border:1px solid var(--line);background:var(--surface);border-radius:10px;flex-direction:column;gap:16px;padding:20px;display:flex;box-shadow:0 10px 28px #13242b0f}.form-panel label{flex-direction:column;gap:8px;display:flex}.form-panel label>span{color:var(--text);font-size:14px;font-weight:600}input,select,textarea{box-sizing:border-box;border:1px solid var(--line-strong);width:100%;min-height:44px;color:var(--text);background:var(--surface);font:inherit;border-radius:8px;outline:none;padding:10px 12px;font-size:16px}input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--focus-ring)}button:focus:not(:focus-visible),a:focus:not(:focus-visible){outline:none}button:focus-visible,a:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.checkbox-row{align-items:flex-start;flex-direction:row!important;gap:10px!important}.checkbox-row input{width:18px;height:18px;min-height:18px;accent-color:var(--primary);flex:none;margin:2px 0 0}.checkbox-row span{color:var(--text-muted)!important;font-size:13px!important;font-weight:500!important;line-height:1.6!important}.note{color:var(--text-muted);margin:0;font-size:12px;line-height:1.6}.error-notice{color:var(--danger);background:linear-gradient(135deg,#fff5f3,snow);border:1px solid #ffd2cc;border-radius:8px;grid-template-columns:auto 1fr;gap:10px;margin-bottom:12px;padding:12px;display:grid;box-shadow:0 8px 18px #d63e2d14}.error-notice svg{color:var(--danger);margin-top:1px}.error-notice strong{color:var(--danger);margin-bottom:2px;font-size:13px;font-weight:750;display:block}.error-notice p{color:#9f2419;margin:0;font-size:13px;line-height:1.55}.error-notice small,.center-page small{color:var(--text-subtle);font-size:11px;font-family:var(--font-mono);margin-top:6px;display:block}.auth-form-error{color:var(--danger);background:#fff1f0;border:1px solid #ffd2cc;border-radius:8px;margin:-2px 0 0;padding:12px;font-size:13px;line-height:1.5}.wechat-only-page{place-items:center;min-height:calc(100dvh - 120px);padding:24px 0;display:grid}.wechat-only-card{border:1px solid var(--line);background:linear-gradient(135deg, #dcf8f2f5 0%, #e8fbffe6 48%, #e6f0ffdb 100%), var(--surface);text-align:center;border-radius:10px;justify-items:center;gap:14px;width:100%;padding:30px 20px;display:grid;box-shadow:0 10px 28px #13242b0f}.wechat-only-card svg{color:var(--primary)}.wechat-only-card h1{color:var(--text);margin:0;font-size:24px;font-weight:750}.wechat-only-card p{color:var(--text-muted);margin:0;font-size:14px;line-height:1.65}.wechat-only-steps{gap:8px;width:100%;margin-top:8px;display:grid}.wechat-only-steps span{border:1px solid var(--primary-soft-border);min-height:38px;color:var(--primary-strong);background:#ffffffb8;border-radius:8px;place-items:center;font-size:13px;font-weight:700;display:grid}.btn-primary,.btn-secondary,.btn-ghost{min-height:44px;font:inherit;cursor:pointer;border:0;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:0 20px;font-size:15px;font-weight:600;display:inline-flex}.btn-primary{color:#fff;background:linear-gradient(135deg, var(--primary), #19b9aa);box-shadow:0 8px 18px #0d948838}.btn-primary:hover{background:var(--primary-strong)}.btn-primary-muted{box-shadow:none;background:linear-gradient(135deg,#7b8a9a,#6b7280)}.btn-primary:disabled{cursor:not-allowed;color:#ffffffb3;background:#9aa8ad}.btn-secondary{border:1px solid var(--line-strong);color:var(--primary-strong);background:linear-gradient(#fff,#e8fbffb8)}.btn-ghost{color:var(--text-muted);background:0 0}.btn-wide{width:100%}.btn-pay{color:#fff;background:linear-gradient(135deg, #ff9f1a, var(--warning-strong));min-height:46px;font:inherit;cursor:pointer;touch-action:manipulation;border:0;border-radius:8px;justify-content:center;align-items:center;padding:0 18px;font-size:15px;font-weight:700;display:inline-flex}.btn-pay:hover{background:var(--warning-strong)}.btn-pay:disabled{cursor:not-allowed;color:#ffffffb8;background:#9aa8ad}.btn-primary,.btn-secondary,.btn-ghost,.btn-pay,.package-card,.date-btn,.slot-btn,.menu-item{transition:background-color .18s ease-out,border-color .18s ease-out,color .18s ease-out,transform .16s ease-out,box-shadow .18s ease-out}.btn-primary:active,.btn-secondary:active,.btn-ghost:active,.btn-pay:active,.package-card:active,.date-btn:active,.slot-btn:active,.menu-item:active{transform:scale(.99)}.page-header{border:1px solid var(--line);background:linear-gradient(135deg, #dcf8f2f5 0%, #eaf4ffe6 54%, #fff2cdd6 100%), var(--surface);border-radius:10px;justify-content:space-between;align-items:flex-start;gap:16px;padding:16px;display:flex;box-shadow:0 10px 28px #13242b0f}.page-header h1{color:var(--text);margin:4px 0 6px;font-size:22px;font-weight:700}.label-primary{color:var(--primary);letter-spacing:0;margin:0;font-size:12px;font-weight:700}.user-info{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;display:flex}.user-info span{border-right:1px solid var(--line);padding-right:8px}.user-info span:last-child{border-right:0}.icon-badge{width:48px;height:48px;color:var(--primary-strong);background:linear-gradient(135deg, var(--primary-soft), var(--surface-cyan));border-radius:12px;flex:none;place-items:center;display:grid}.page-header-simple{align-items:center;min-height:44px;margin-bottom:16px;display:flex}.page-header-simple--with-back{justify-content:center;position:relative}.page-header-simple h1{color:var(--text);margin:0;font-size:22px;font-weight:700}.header-back{min-height:44px;color:var(--text-muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:4px;padding:0 8px 0 0;font-size:14px;font-weight:650;display:inline-flex;position:absolute;left:0}.ticket-card{border:1px solid var(--line);background:var(--surface);border-radius:10px;margin-top:14px;overflow:hidden;box-shadow:0 10px 28px #13242b12}.ticket-header{background:linear-gradient(90deg, #0d948829, #1d6fff21, #ffedbdad), var(--surface);justify-content:space-between;align-items:flex-start;gap:12px;padding:18px;display:flex}.ticket-label{color:var(--primary);text-transform:uppercase;font-size:12px;font-weight:700}.ticket-header h2{color:var(--text);margin:4px 0;font-size:24px;font-weight:700}.ticket-header p{color:var(--text-muted);margin:0;font-size:14px}.ticket-body{border-top:1px dashed var(--line-strong);border-bottom:1px solid var(--line);gap:10px;padding:16px 18px;display:grid}.ticket-footer{color:var(--text-muted);justify-content:space-between;align-items:center;padding:14px 18px 8px;font-size:13px;display:flex}.ticket-footer strong{color:var(--primary);font-size:18px;font-weight:700}.ticket-footer .amount-due{color:var(--warning)}.ticket-actions{padding:0 18px 18px}.next-card{border:1px solid var(--line);background:linear-gradient(135deg, #fffffffa, #e8fbff8a), var(--surface);border-radius:10px;gap:14px;margin-top:14px;padding:16px;display:grid;box-shadow:0 10px 28px #13242b12}.next-card--payable{background:linear-gradient(135deg, var(--surface-amber), var(--surface-peach));border-color:#f0af35}.next-card--scheduled{border-color:var(--primary-soft-border);background:linear-gradient(135deg, var(--surface-clinical), var(--surface-blue))}.next-card--report-ready{background:linear-gradient(135deg, var(--surface-blue), var(--surface-lilac));border-color:#8ab9ff}.next-card--cancelled{background:var(--surface-rose);border-color:#f0b7b2}.next-label{color:var(--text-muted);margin-bottom:4px;font-size:12px;font-weight:700;display:block}.next-card h2{color:var(--text);margin:0 0 6px;font-size:20px;font-weight:750}.next-card p{color:var(--text-muted);margin:0;font-size:13px;line-height:1.55}.next-card .btn-primary,.next-card .btn-pay{white-space:nowrap;width:100%;padding:0 14px}.section-title{justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.section-title span{color:var(--text-muted);font-size:12px;font-weight:700}.section-title strong{color:var(--text);text-align:right;font-size:14px;font-weight:750}.journey-card{border:1px solid var(--line);background:linear-gradient(180deg, #fffffffa, #f0edff85), var(--surface);border-radius:10px;gap:14px;margin-top:14px;padding:16px;display:grid;box-shadow:0 10px 28px #13242b0f}.journey-list{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;display:grid}.journey-step{min-width:0;color:var(--text-subtle);text-align:center;justify-items:center;gap:7px;display:grid;position:relative}.journey-step:before{background:var(--line);content:"";width:calc(100% - 18px);height:1px;position:absolute;top:15px;left:calc(18px - 50%)}.journey-step:first-child:before{display:none}.journey-step>span{border:1px solid var(--line);background:var(--surface);z-index:1;border-radius:999px;place-items:center;width:30px;height:30px;display:grid}.journey-step div{gap:2px;min-width:0;display:grid}.journey-step strong{color:inherit;font-size:12px;font-weight:750}.journey-step small{color:inherit;font-size:10px;line-height:1.35}.journey-step--done{color:var(--success)}.journey-step--done>span{background:var(--success-soft);border-color:#81d9ad}.journey-step--done:before,.journey-step--current:before{background:#81d9ad}.journey-step--current{color:var(--warning-strong)}.journey-step--current>span{background:var(--warning-soft);border-color:#efc460}.info-item{background:linear-gradient(135deg, var(--surface-cyan), var(--surface-blue));border-radius:8px;grid-template-columns:20px 1fr;gap:4px 10px;padding:12px;display:grid}.info-item svg{color:var(--primary);grid-row:span 2;margin-top:2px}.info-item span{color:var(--text-muted);font-size:12px}.info-item strong{color:var(--text);font-size:14px;font-weight:600}.empty-card{border:1px solid var(--line);background:linear-gradient(180deg, #e8fbffc2, #fffffffa), var(--surface);text-align:center;border-radius:10px;flex-direction:column;align-items:center;gap:12px;margin-top:16px;padding:40px 20px;display:flex;box-shadow:0 2px 8px #00000014}.empty-card svg{color:var(--line-strong)}.empty-card p{color:var(--text-muted);margin:0;font-size:14px}.empty-card small{color:var(--text-subtle);font-size:12px}.empty-card--home{padding:34px 20px 20px}.field-help{color:var(--text-muted);margin-top:-2px;font-size:12px;line-height:1.55}.menu-panel{border:1px solid var(--line);background:var(--surface);border-radius:10px;gap:0;margin-top:18px;padding:0 18px;display:grid;box-shadow:0 10px 28px #13242b0f}.menu-item{border:0;border-top:1px solid var(--line);text-align:left;cursor:pointer;min-height:66px;font:inherit;background:0 0;grid-template-columns:28px minmax(0,1fr) 18px;align-items:center;gap:14px;padding:0;display:grid}.menu-item:first-child{border-top:0}.menu-item svg{color:var(--secondary)}.menu-item svg:last-child{justify-self:end}.menu-item span{color:var(--text);font-size:16px;font-weight:700}.menu-item:hover{color:var(--primary)}.appointment-flow{padding-bottom:calc(128px + env(safe-area-inset-bottom))}.flow-context,.selected-summary{border:1px solid var(--line);background:linear-gradient(135deg, #fffffffa, #e8fbff94, #e6f0ff75), var(--surface);border-radius:10px;gap:10px;padding:14px 16px;display:grid;box-shadow:0 10px 28px #13242b0d}.flow-context{grid-template-columns:1fr 1fr}.flow-context>small{grid-column:1/-1}.flow-context__row,.selected-summary{grid-template-columns:34px minmax(0,1fr);align-items:center}.flow-context__row>svg,.selected-summary__icon{width:34px;height:34px;color:var(--primary);background:linear-gradient(135deg, var(--primary-soft), var(--surface-cyan));border-radius:8px;place-items:center;display:grid}.selected-summary__icon{justify-content:center}.flow-context span,.selected-summary span{color:var(--text-muted);font-size:12px;font-weight:650}.flow-context strong,.selected-summary strong{color:var(--text);font-size:15px;font-weight:750}.flow-context small,.selected-summary small{color:var(--text-muted);font-size:12px;line-height:1.5}.content-section{border:1px solid var(--line);background:linear-gradient(180deg, #fffffffc, #f2f7fbbd), var(--surface);border-radius:10px;margin-top:16px;padding:16px;box-shadow:0 10px 28px #13242b0f}.content-section h3{color:var(--text);margin:20px 0 12px;font-size:16px;font-weight:700}.content-section h3:first-child{margin-top:0}.step-indicator{border:1px solid var(--line);background:var(--surface);border-radius:10px;grid-template-columns:repeat(4,1fr);gap:0;margin:16px 0;display:grid;overflow:hidden}.step{background:linear-gradient(180deg, #fff, var(--surface-blue));flex-direction:column;align-items:center;gap:6px;padding:11px 6px;display:flex;position:relative}.step+.step{border-left:1px solid var(--line)}.step span{width:26px;height:26px;color:var(--text-subtle);background:var(--surface-muted);border-radius:50%;place-items:center;font-size:14px;font-weight:700;display:grid}.step strong{color:var(--text-muted);font-size:12px}.step.active span{color:#fff;background:linear-gradient(135deg, var(--primary), var(--secondary), var(--accent))}.step.active strong{color:var(--primary-strong)}.package-list{gap:12px;margin-top:16px;display:grid}.package-card{border:1px solid var(--line);background:linear-gradient(135deg, #fffffffa, #e8fbff6b), var(--surface);text-align:left;cursor:pointer;font:inherit;border-radius:10px;grid-template-columns:1fr auto;gap:12px;padding:16px;display:grid}.package-card.selected{border-color:var(--primary);background:linear-gradient(135deg, var(--surface-clinical), var(--surface-cyan), var(--surface-blue));box-shadow:inset 4px 0 0 var(--primary), 0 12px 26px #0d948824}.package-card__tag{min-height:22px;color:var(--primary-strong);background:linear-gradient(135deg, var(--primary-soft), var(--surface-cyan));border-radius:999px;align-items:center;margin-bottom:8px;padding:0 8px;font-size:12px;font-weight:700;display:inline-flex}.package-card strong{color:var(--text);margin-bottom:4px;font-size:16px;display:block}.package-card small{color:var(--text-muted);margin-bottom:6px;font-size:13px;display:block}.package-card em{color:var(--text-subtle);font-size:12px;font-style:normal;display:block}.package-card b{color:var(--primary-strong);font-size:18px;font-weight:700}.profile-check-card{border:1px solid var(--line-strong);background:var(--surface);border-radius:10px;margin-top:16px;overflow:hidden;box-shadow:0 12px 30px #13242b14}.profile-check-card__hero{color:var(--primary);background:linear-gradient(135deg, #dcf8f2f2, #eaf4ffdb, #fff2cda8), var(--surface);justify-content:space-between;gap:14px;padding:18px;display:flex}.profile-check-card__hero span{color:var(--primary-strong);margin-bottom:6px;font-size:12px;font-weight:750;display:block}.profile-check-card__hero strong{color:var(--text);font-size:21px;font-weight:800;display:block}.profile-check-card__hero small{color:var(--text-muted);margin-top:8px;font-size:13px;line-height:1.55;display:block}.profile-check-list{border-top:1px dashed var(--line-strong);grid-template-columns:1fr 1fr;display:grid}.profile-check-list div{border-right:1px solid var(--line);border-bottom:1px solid var(--line);gap:5px;padding:14px;display:grid}.profile-check-list div:nth-child(2n){border-right:0}.profile-check-list div:nth-last-child(-n+2){border-bottom:0}.profile-check-list span{color:var(--text-muted);font-size:12px;font-weight:650}.profile-check-list strong{color:var(--text);word-break:break-all;font-size:15px;font-weight:750}.date-list{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.date-btn{border:1px solid var(--line);background:linear-gradient(180deg, #fff, var(--surface-blue));text-align:left;cursor:pointer;font:inherit;border-radius:10px;flex-direction:column;gap:4px;padding:16px;display:flex}.date-btn.selected{border-color:var(--secondary);background:linear-gradient(135deg, var(--surface-blue), var(--surface-cyan));box-shadow:inset 3px 0 0 var(--secondary)}.date-btn strong{color:var(--text);font-size:18px}.date-btn span{color:var(--text-muted);font-size:13px}.date-btn small{color:var(--text-subtle);font-size:12px}.slot-list{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.slot-btn{border:1px solid var(--line);background:linear-gradient(180deg, #fff, var(--surface-lilac));cursor:pointer;font:inherit;border-radius:10px;flex-direction:column;gap:4px;padding:16px;display:flex}.slot-btn.selected{border-color:var(--primary);background:linear-gradient(135deg, var(--surface-clinical), var(--surface-cyan));box-shadow:inset 3px 0 0 var(--primary)}.slot-btn strong{color:var(--text);font-size:16px}.slot-btn span{color:var(--text-muted);font-size:12px}.slot-btn small{color:var(--text-subtle);font-size:12px;line-height:1.45}.info-list{gap:0;display:grid}.info-row{border-top:1px solid var(--line);justify-content:space-between;gap:12px;padding:14px 0;display:flex}.info-row:first-child{border-top:0}.info-row span{color:var(--text-muted);font-size:14px}.info-row strong{color:var(--text);text-align:right;font-size:14px;font-weight:600}.info-row.total{border-top:2px solid var(--line);margin-top:8px;padding-top:16px}.info-row.total strong{color:var(--warning);font-size:18px}.confirm-sheet{border:1px solid var(--line-strong);background:var(--surface);border-radius:10px;margin-top:16px;overflow:hidden;box-shadow:0 12px 30px #13242b14}.confirm-sheet__header{color:var(--primary);background:linear-gradient(90deg, #0d948826, #1d6fff21, #7c5cff1f), var(--surface);justify-content:space-between;align-items:flex-start;gap:14px;padding:16px;display:flex}.confirm-sheet__header span{color:var(--primary);margin-bottom:5px;font-size:12px;font-weight:750;display:block}.confirm-sheet__header strong{color:var(--text);font-size:18px;font-weight:800;line-height:1.35;display:block}.confirm-sheet__header small{color:var(--text-muted);margin-top:5px;font-size:12px;display:block}.confirm-grid{border-top:1px dashed var(--line-strong);border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;display:grid}.confirm-grid div{border-right:1px solid var(--line);border-bottom:1px solid var(--line);gap:5px;min-width:0;padding:13px 14px;display:grid}.confirm-grid div:first-child,.confirm-grid div:nth-child(4){background:#e5f8f1ad}.confirm-grid div:nth-child(2),.confirm-grid div:nth-child(5){background:#eaf4ffb8}.confirm-grid div:nth-child(3){background:#fff2cdc7}.confirm-grid div:nth-child(2n){border-right:0}.confirm-grid div:last-child:nth-child(odd){border-right:0;grid-column:1/-1}.confirm-grid div:nth-last-child(-n+2){border-bottom:0}.confirm-grid span,.package-includes span{color:var(--text-muted);font-size:12px;font-weight:650}.confirm-grid strong,.package-includes strong{color:var(--text);font-size:14px;font-weight:750;line-height:1.45}.package-includes{background:linear-gradient(135deg,#fffffff5,#f0edffa3);gap:6px;padding:14px 16px 16px;display:grid}.package-includes small{color:var(--text-subtle);font-size:12px;line-height:1.45}.precheck-card{border:1px solid var(--line);background:linear-gradient(135deg,#fff2cdb8,#fff1e894,#fffffff5);border-radius:10px;gap:12px;margin-top:16px;padding:16px;display:grid;box-shadow:0 10px 28px #13242b0d}.precheck-card--plain{background:linear-gradient(135deg,#fffffffa,#e8fbffb8)}.section-copy{color:var(--text-muted);margin:4px 0 14px;font-size:13px;line-height:1.55}.addon-list{gap:16px;display:grid}.addon-section{padding-bottom:14px}.addon-list--compact{gap:12px}.addon-group{gap:8px;display:grid}.addon-group>strong{color:var(--text);font-size:14px;font-weight:700}.addon-item{background:linear-gradient(135deg,#f2f7fbf2,#eaf4ffb3);border-radius:8px;grid-template-columns:24px 1fr auto;align-items:start;gap:12px;padding:12px;display:grid}.addon-item input{width:18px;height:18px;min-height:18px;accent-color:var(--primary);margin-top:2px}.addon-item span{flex-direction:column;gap:4px;display:flex}.addon-item strong{color:var(--text);font-size:14px}.addon-item small{color:var(--text-muted);font-size:12px}.addon-item b{color:var(--warning);white-space:nowrap;font-size:14px;font-weight:700}.visit-note,.visit-tips{border:1px solid var(--primary-soft-border);background:linear-gradient(135deg, var(--primary-soft), var(--surface-cyan), var(--surface-blue));border-radius:10px;gap:8px;margin-top:16px;padding:14px;display:grid}.visit-note strong{color:var(--text);font-size:14px;font-weight:750}.visit-note span,.visit-tips span{color:var(--text);padding-left:14px;font-size:13px;line-height:1.55;position:relative}.visit-note span:before,.visit-tips span:before{background:var(--primary);content:"";border-radius:999px;width:5px;height:5px;position:absolute;top:8px;left:0}.visit-tips{background:var(--surface);border-width:1px 0 0;border-radius:0;margin:0;padding:14px 18px 18px}.visit-note--success,.visit-note--plain{box-sizing:border-box;width:100%;margin-top:0}.flow-action-bar{width:min(430px,100%);padding:12px 14px calc(14px + env(safe-area-inset-bottom));border-top:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);z-index:20;background:linear-gradient(#fffffff5,#e8fbfff5);justify-content:space-between;align-items:center;gap:12px;margin:0 auto;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -10px 28px #13242b24}.flow-action-bar--settlement{grid-template-columns:minmax(92px,.72fr) minmax(0,1.28fr);align-items:center;gap:12px;display:grid}.flow-action-info{flex-direction:column;gap:3px;min-width:0;display:flex}.flow-action-info span{color:var(--text-muted);font-size:12px}.flow-action-info strong{color:var(--warning);font-variant-numeric:tabular-nums;font-size:20px;font-weight:700}.flow-action-info small{color:var(--text-muted);font-size:11px;line-height:1.35}.flow-action-buttons{grid-template-columns:72px minmax(0,1fr);gap:10px;width:100%;display:grid}.flow-action-bar>.btn-primary,.flow-action-bar>.btn-secondary,.flow-action-buttons .btn-primary,.flow-action-buttons .btn-secondary{min-width:0;padding:0 10px;font-size:14px}.success-page{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:100%;padding:28px 16px;display:flex}.success-page>svg{color:var(--success)}.success-page h1{color:var(--text);margin:0;font-size:24px;font-weight:750}.success-info{border:1px solid var(--line);background:linear-gradient(135deg, var(--success-soft) 0%, var(--surface-cyan) 48%, var(--surface-blue) 100%);text-align:center;border-radius:10px;flex-direction:column;gap:8px;padding:24px;display:flex}.success-info span{color:var(--success);text-transform:uppercase;font-size:12px;font-weight:700}.success-info strong{color:var(--text);font-size:24px;font-weight:700}.success-info p{color:var(--text-muted);margin:0;font-size:14px}.success-info b{color:var(--warning);font-size:16px}.orders-entry-card{border:1px solid var(--primary-soft-border);background:radial-gradient(circle at 14% 18%,#2cb39b2e,#0000 28%),linear-gradient(135deg,#fffffffa,#e8fbffdb,#f5fcf5f0);border-radius:10px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;margin-top:14px;padding:16px;display:grid;box-shadow:0 10px 28px #13242b0f}.orders-entry-card div{gap:5px;display:grid}.orders-entry-card span{color:var(--primary-strong);font-size:12px;font-weight:750}.orders-entry-card strong{color:var(--text);font-size:15px;font-weight:750;line-height:1.35}.orders-entry-card .btn-primary{white-space:nowrap;min-width:112px;padding:0 14px}.order-list{gap:12px;margin-top:16px;display:grid}.order-card{border:1px solid var(--line);background:linear-gradient(135deg, #fffffffa, #e5f8f194, #fff2cd57), var(--surface);border-radius:10px;gap:12px;padding:16px;display:grid;box-shadow:0 10px 28px #13242b0f}.order-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.order-header h3{color:var(--text);margin:0 0 6px;font-size:16px;font-weight:600}.order-header span{color:var(--text-muted);font-size:13px}.order-info{border-top:1px solid var(--line);color:var(--text-muted);justify-content:space-between;padding:12px 0;font-size:13px;display:flex}.order-info strong{color:var(--warning);font-size:16px;font-weight:700}.order-next{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.order-next span{color:var(--text-muted);font-size:13px;font-weight:650}.status-panel{border:1px solid var(--primary-soft-border);background:linear-gradient(135deg, var(--surface-clinical), var(--surface-cyan), var(--surface-blue));border-radius:10px;gap:6px;margin-top:14px;padding:16px;display:grid}.status-panel--warning{background:linear-gradient(135deg, var(--surface-amber), var(--surface-peach));border-color:#edb333}.status-panel span{color:var(--text-muted);font-size:12px;font-weight:750}.status-panel strong{color:var(--text);font-size:17px;font-weight:750}.status-panel p{color:var(--text-muted);margin:0;font-size:13px;line-height:1.55}.detail-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:20px;display:flex}.detail-header h2{color:var(--text);margin:0;font-size:18px;font-weight:700}.button-group{grid-template-columns:1fr 1fr;gap:12px;margin-top:16px;display:grid}.button-group--single{grid-template-columns:1fr}.report-list{gap:12px;margin-top:16px;display:grid}.report-card{border:1px solid var(--line);background:linear-gradient(135deg, #eaf4ffd1, #f0edff8f, #fffffffa), var(--surface);border-radius:10px;gap:12px;padding:16px;display:grid;box-shadow:0 10px 28px #13242b0f}.report-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.report-card h3{color:var(--text);margin:0 0 6px;font-size:16px;font-weight:600}.report-card p{color:var(--text-muted);margin:0;font-size:14px;line-height:1.6}.report-card small{color:var(--text-subtle);margin-top:8px;font-size:12px;display:block}.report-content{border-top:1px solid var(--line);background:linear-gradient(135deg,#eaf4ff94,#f0edff47,#fff0);border-radius:8px;margin-top:20px;padding-top:20px;padding-left:12px;padding-right:12px}.report-content h3{color:var(--text);margin:0 0 12px;font-size:16px;font-weight:700}.report-content p{color:var(--text);margin:0 0 12px;font-size:14px;line-height:1.8}.report-content small{color:var(--text-muted);font-size:13px}.section-note{color:var(--text-muted);margin:-4px 0 8px;font-size:13px;line-height:1.55}.inline-empty{color:var(--text-muted);background:#eff6ffb8;border:1px dashed #3b82f647;border-radius:8px;align-items:center;gap:10px;margin-top:10px;padding:14px;font-size:13px;line-height:1.55;display:flex}.inline-empty svg{color:var(--brand);flex:none}.dept-section{border-top:1px solid var(--line);padding:16px 0}.dept-section:first-of-type{border-top:0}.dept-header{margin-bottom:12px}.dept-header strong{color:var(--text);margin-bottom:4px;font-size:15px;font-weight:600;display:block}.dept-header span{min-height:22px;color:var(--accent-strong);background:var(--accent-soft);border-radius:999px;align-items:center;padding:0 8px;font-size:13px;display:inline-flex}.dept-section>p{color:var(--text);margin:0 0 12px;font-size:14px;line-height:1.6}.item-row{background:linear-gradient(135deg, var(--surface-blue), var(--surface-lilac), #fffffff2);border-radius:8px;grid-template-columns:1fr auto auto;align-items:center;gap:12px;margin-top:8px;padding:12px;display:grid}.item-row div{flex-direction:column;gap:4px;display:flex}.item-row strong{color:var(--text);font-size:14px}.item-row span{color:var(--text-muted);font-size:12px}.item-row p{color:var(--text);margin:0;font-size:14px;font-weight:600}.profile-section{border:1px solid var(--line);background:linear-gradient(135deg, #0d94881f, #1d6fff1a 52%, #7c5cff1a 100%), var(--surface);border-radius:10px;margin-top:14px;padding:18px;box-shadow:0 10px 28px #13242b0f}.profile-info{grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:14px;min-width:0;display:grid}.profile-info>svg{width:54px;height:54px;color:var(--accent-strong);justify-self:center}.profile-info>div{min-width:0}.profile-info h3{color:var(--text);margin:0 0 4px;font-size:18px;font-weight:700}.profile-info p{color:var(--text-muted);margin:0;font-size:14px}.profile-status{white-space:nowrap;justify-self:end}.profile-meta{border-top:1px solid var(--line);gap:0;margin-top:18px;padding-top:14px;display:grid}.profile-meta div{justify-content:space-between;gap:12px;padding:9px 0;display:flex}.profile-meta span{color:var(--text-muted);font-size:13px}.profile-meta strong{color:var(--text);text-align:right;font-size:13px;font-weight:650}.profile-checkup-card{border:1px solid var(--line);background:linear-gradient(135deg, #fffffffa, #f0edffa8), var(--surface);border-radius:10px;gap:14px;margin-top:14px;padding:16px;display:grid;box-shadow:0 10px 28px #13242b0d}.profile-checkup-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.profile-checkup-grid div{background:linear-gradient(135deg, var(--surface-blue), var(--surface-lilac));border-radius:8px;gap:5px;min-width:0;padding:12px;display:grid}.profile-checkup-grid span{color:var(--text-muted);font-size:12px}.profile-checkup-grid strong{color:var(--text);font-size:13px;font-weight:750;line-height:1.4}.badge{white-space:nowrap;border-radius:12px;align-items:center;min-height:24px;padding:0 10px;font-size:12px;font-weight:700;display:inline-flex}.badge-normal{color:var(--success);background:var(--success-soft)}.badge-warning{color:var(--warning-strong);background:var(--warning-soft)}.badge-danger{color:var(--danger);background:var(--danger-soft)}.badge-info{color:var(--secondary-strong);background:var(--secondary-soft)}.bottom-nav{width:min(430px,100%);padding:8px 14px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(#fffffff5,#eaf4fff5);grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:0 auto;display:grid;position:fixed;bottom:0;left:0;right:0}.nav-item{min-height:56px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:12px;font-weight:650;display:flex}.nav-item.active{color:var(--primary-strong);background:linear-gradient(135deg, var(--primary-soft), var(--surface-cyan))}@media (width<=520px){.phone-shell{width:100%}}@media (width<=374px){.phone-screen{padding-left:12px;padding-right:12px}.journey-list{gap:3px}.journey-step small{display:none}.confirm-grid,.profile-checkup-grid,.flow-context{grid-template-columns:1fr}.confirm-grid div,.confirm-grid div:nth-child(2n){border-right:0}.confirm-grid div:nth-last-child(2){border-bottom:1px solid var(--line)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{--admin-primary:#0284c7;--admin-primary-hover:#0369a1;--admin-secondary:#14b8a6;--admin-secondary-hover:#0f766e;--admin-danger:#dc2626;--admin-danger-hover:#b91c1c;--admin-bg:#f8fafc;--admin-surface:#fff;--admin-surface-secondary:#f1f5f9;--admin-border:#e2e8f0;--admin-border-dark:#cbd5e1;--admin-text:#0f172a;--admin-text-muted:#64748b;--admin-text-light:#94a3b8;--admin-sidebar-width:240px;--admin-sidebar-collapsed-width:64px}.admin-console-container{background:var(--admin-bg);min-height:100vh;color:var(--admin-text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;display:flex}.admin-console-main{min-width:0;margin-left:var(--admin-sidebar-width);flex-direction:column;flex:1;transition:margin-left .2s;display:flex}.admin-sidebar{width:var(--admin-sidebar-width);background:var(--admin-surface);border-right:1px solid var(--admin-border);z-index:100;flex-direction:column;height:100vh;transition:transform .2s;display:flex;position:fixed;top:0;left:0}.admin-sidebar-header{border-bottom:1px solid var(--admin-border);background:var(--admin-surface);align-items:center;gap:.75rem;padding:1.25rem 1rem;display:flex}.admin-sidebar-logo{background:linear-gradient(135deg, var(--admin-primary), var(--admin-secondary));color:#fff;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:1rem;font-weight:600;display:flex}.admin-sidebar-title{color:var(--admin-text);white-space:nowrap;font-size:1rem;font-weight:600}.admin-sidebar-nav{flex:1;padding:.5rem 0;overflow-y:auto}.admin-nav-item{color:var(--admin-text-muted);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:6px;align-items:center;gap:.75rem;width:calc(100% - 1rem);margin:.125rem .5rem;padding:.75rem 1rem;font-size:.875rem;font-weight:500;transition:all .15s;display:flex}.admin-nav-item:hover{background:var(--admin-surface-secondary);color:var(--admin-text)}.admin-nav-item.active{background:var(--admin-primary);color:#fff}.admin-nav-item.active:hover{background:var(--admin-primary-hover)}.admin-nav-icon{flex-shrink:0;width:20px;height:20px}.admin-sidebar-overlay{z-index:99;background:#00000080;display:none;position:fixed;inset:0}.admin-sidebar-overlay.visible{display:block}.admin-header{background:var(--admin-surface);border-bottom:1px solid var(--admin-border);z-index:50;justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex;position:sticky;top:0}.admin-header-left{align-items:center;gap:1rem;display:flex}.admin-header-menu-toggle{border:1px solid var(--admin-border);cursor:pointer;color:var(--admin-text);background:0 0;border-radius:6px;padding:.5rem;transition:background .15s;display:none}.admin-header-menu-toggle:hover{background:var(--admin-surface-secondary)}.admin-header-title{color:var(--admin-text);margin:0;font-size:1.25rem;font-weight:600}.admin-header-actions{align-items:center;gap:.5rem;display:flex}.admin-content{flex:1;width:100%;max-width:1600px;margin:0 auto;padding:1.5rem}.admin-card{background:var(--admin-surface);border:1px solid var(--admin-border);border-radius:8px;margin-bottom:1.5rem;padding:1.5rem}.admin-card-header{border-bottom:1px solid var(--admin-border);justify-content:space-between;align-items:center;margin-bottom:1.25rem;padding-bottom:1rem;display:flex}.admin-card-title{color:var(--admin-text);align-items:center;gap:.5rem;margin:0;font-size:1.125rem;font-weight:600;display:flex}.admin-card-body{color:var(--admin-text)}.admin-card-empty{text-align:center;color:var(--admin-text-muted);padding:3rem 1rem}.admin-btn{cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:6px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-family:inherit;font-size:.875rem;font-weight:500;transition:all .15s;display:inline-flex}.admin-btn:disabled{opacity:.5;cursor:not-allowed}.admin-btn-primary{background:var(--admin-primary);color:#fff;border-color:var(--admin-primary)}.admin-btn-primary:hover:not(:disabled){background:var(--admin-primary-hover);border-color:var(--admin-primary-hover)}.admin-btn-secondary{color:var(--admin-text);border-color:var(--admin-border-dark);background:0 0}.admin-btn-secondary:hover:not(:disabled){background:var(--admin-surface-secondary)}.admin-btn-danger{background:var(--admin-danger);color:#fff;border-color:var(--admin-danger)}.admin-btn-danger:hover:not(:disabled){background:var(--admin-danger-hover);border-color:var(--admin-danger-hover)}.admin-btn-icon{color:var(--admin-text-muted);border-color:var(--admin-border-dark);background:0 0;padding:.5rem}.admin-btn-icon:hover:not(:disabled){background:var(--admin-surface-secondary);color:var(--admin-text)}.admin-stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem;display:grid}.admin-stat-card{background:var(--admin-surface);border:1px solid var(--admin-border);border-radius:8px;padding:1.25rem}.admin-stat-label{color:var(--admin-text-muted);margin-bottom:.5rem;font-size:.875rem;font-weight:500}.admin-stat-value{color:var(--admin-text);font-size:2rem;font-weight:600;line-height:1}.admin-stat-value.error{color:var(--admin-danger);font-size:1.5rem}.admin-table-container{border:1px solid var(--admin-border);border-radius:8px;overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;font-size:.875rem}.admin-table thead{background:var(--admin-surface-secondary)}.admin-table th{text-align:left;color:var(--admin-text);white-space:nowrap;border-bottom:1px solid var(--admin-border);padding:.75rem 1rem;font-weight:600}.admin-table td{border-bottom:1px solid var(--admin-border);color:var(--admin-text);padding:.875rem 1rem}.admin-table tbody tr:last-child td{border-bottom:none}.admin-table tbody tr:hover{background:var(--admin-surface-secondary)}.admin-table-empty{text-align:center;color:var(--admin-text-muted);padding:3rem 1rem}.admin-table code{background:var(--admin-surface-secondary);color:var(--admin-text);border-radius:4px;padding:.25rem .5rem;font-family:SF Mono,Monaco,Courier New,monospace;font-size:.8125rem}.admin-table-subtext{color:var(--admin-text-muted);font-size:.8125rem}.admin-badge{border-radius:999px;padding:.25rem .625rem;font-size:.75rem;font-weight:500;display:inline-block}.admin-badge-his{color:#1e40af;background:#dbeafe}.admin-badge-app{color:#115e59;background:#ccfbf1}.admin-feedback{border-radius:8px;align-items:center;gap:.75rem;margin-bottom:1rem;padding:1rem 1.25rem;font-size:.875rem;display:flex}.admin-feedback-success{color:#065f46;background:#d1fae5;border:1px solid #10b981}.admin-feedback-error{color:#7f1d1d;background:#fee2e2;border:1px solid #ef4444}.admin-feedback-info{color:#1e3a8a;background:#dbeafe;border:1px solid #3b82f6}.admin-loading{color:var(--admin-text-muted);justify-content:center;align-items:center;padding:3rem 1rem;display:flex}.admin-status-error{min-height:260px;color:var(--admin-danger);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:3rem 1.5rem;display:flex}.admin-alert{border:1px solid;border-radius:8px;gap:.75rem;margin-bottom:1.5rem;padding:1rem 1.25rem;display:flex}.admin-alert-danger{color:#7f1d1d;background:#fef2f2;border-color:#fecaca}.admin-alert-warning{color:#78350f;background:#fffbeb;border-color:#fde68a}.admin-alert-icon{color:inherit;flex-shrink:0}.admin-alert-content{flex:1}.admin-alert-title{margin-bottom:.25rem;font-weight:600}.admin-alert-message{margin:0;font-size:.875rem}.admin-form-field{margin-bottom:1rem}.admin-form-label{color:var(--admin-text);margin-bottom:.5rem;font-size:.875rem;font-weight:500;display:block}.admin-form-input{border:1px solid var(--admin-border-dark);background:var(--admin-surface);width:100%;color:var(--admin-text);box-sizing:border-box;border-radius:6px;padding:.625rem .75rem;font-family:inherit;font-size:.875rem}.admin-form-input:focus{border-color:var(--admin-primary);outline:none;box-shadow:0 0 0 3px #0284c71a}.admin-form-textarea{border:1px solid var(--admin-border-dark);background:var(--admin-surface-secondary);width:100%;color:var(--admin-text);resize:vertical;box-sizing:border-box;border-radius:6px;min-height:120px;padding:.75rem;font-family:SF Mono,Monaco,Courier New,monospace;font-size:.8125rem}.admin-form-textarea:focus{border-color:var(--admin-primary);outline:none;box-shadow:0 0 0 3px #0284c71a}.admin-demo-list{gap:1rem;display:grid}.admin-demo-card{background:var(--admin-surface-secondary);border:1px solid var(--admin-border);border-radius:8px;justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem;display:flex}.admin-demo-info{flex:1}.admin-demo-name{color:var(--admin-text);margin-bottom:.25rem;font-size:1rem;font-weight:600}.admin-demo-desc{color:var(--admin-text-muted);margin:.25rem 0;font-size:.875rem}.admin-demo-details{color:var(--admin-text-light);font-size:.8125rem}.admin-tunnel-results{flex-direction:column;gap:1.5rem;margin-top:1.5rem;display:flex}.admin-tunnel-section{flex-direction:column;gap:.75rem;display:flex}.admin-tunnel-section-title{color:var(--admin-text);margin:0;font-size:.875rem;font-weight:600}.admin-tunnel-command-wrapper{position:relative}.admin-tunnel-command-wrapper .admin-btn-icon{position:absolute;top:.75rem;right:.75rem}.admin-tunnel-info{background:var(--admin-surface-secondary);border:1px solid var(--admin-border);border-radius:6px;flex-direction:column;gap:.5rem;padding:1rem;display:flex}.admin-tunnel-info-row{gap:.5rem;font-size:.875rem;display:flex}.admin-tunnel-info-label{color:var(--admin-text-muted);min-width:80px;font-weight:500}.admin-tunnel-info-value{color:var(--admin-text);flex:1}.admin-tunnel-usage{color:var(--admin-text-muted);margin-top:1.5rem;font-size:.875rem}.admin-tunnel-usage-title{margin:0 0 .5rem;font-weight:600}.admin-tunnel-usage-list{margin:.5rem 0;padding-left:1.5rem}.admin-activity-grid{gap:.75rem;display:grid}.admin-activity-card{background:var(--admin-surface-secondary);border-radius:6px;padding:.75rem}.admin-activity-label{color:var(--admin-text-muted);margin-bottom:.25rem;font-size:.875rem}.admin-activity-value{color:var(--admin-text);font-size:1.25rem;font-weight:600}.admin-danger-zone{border-color:var(--admin-danger);background:#fef2f2}.admin-danger-actions{justify-content:space-between;align-items:center;gap:1rem;display:flex}.admin-danger-description{color:var(--admin-text-muted);flex:1;margin:0;font-size:.875rem}.admin-danger-description strong{color:var(--admin-text);margin-bottom:.25rem;font-weight:600;display:block}.admin-danger-description p{margin:0}@media (width<=1024px){.admin-sidebar{transform:translate(-100%)}.admin-sidebar.open{transform:translate(0)}.admin-console-main{margin-left:0}.admin-header-menu-toggle{display:flex}.admin-stats-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}}@media (width<=640px){.admin-header,.admin-content,.admin-card{padding:1rem}.admin-stats-grid{grid-template-columns:1fr 1fr}.admin-demo-card,.admin-danger-actions{flex-direction:column;align-items:stretch}.admin-table{font-size:.8125rem}.admin-table th,.admin-table td{padding:.625rem .75rem}}.admin-login{color:#0f172a;background:radial-gradient(circle at 18% 12%,#14b8a629,#0000 26%),linear-gradient(135deg,#f8fafc 0%,#eef7fb 52%,#f5fbf9 100%);justify-content:center;align-items:center;min-height:100vh;padding:24px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;display:flex}.admin-login-card{background:#fffffff5;border:1px solid #dbe7ef;border-radius:12px;width:min(100%,420px);padding:32px;box-shadow:0 20px 60px #0f172a1f}.admin-login-card h1{color:#0f172a;margin:0 0 8px;font-size:24px;font-weight:700}.admin-login-card p{color:#64748b;margin:0 0 24px;font-size:14px;line-height:1.6}.admin-login-form-field{margin-bottom:18px}.admin-login-form-field label{color:#334155;margin-bottom:8px;font-size:14px;font-weight:600;display:block}.admin-login-form-field input{box-sizing:border-box;color:#0f172a;width:100%;min-height:44px;font:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:10px 12px;font-size:15px}.admin-login-form-field input:focus{border-color:#0284c7;outline:none;box-shadow:0 0 0 3px #0284c724}.admin-login-btn-primary{color:#fff;width:100%;min-height:44px;font:inherit;cursor:pointer;background:linear-gradient(135deg,#0284c7,#14b8a6);border:1px solid #0284c7;border-radius:8px;font-size:15px;font-weight:700;transition:transform .15s,box-shadow .15s,opacity .15s}.admin-login-btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 12px 24px #0284c738}.admin-login-btn-primary:disabled{cursor:not-allowed;opacity:.52;box-shadow:none}.admin-login-error-notice{color:#7f1d1d;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;gap:12px;margin-bottom:20px;padding:14px;display:flex}.admin-login-error-notice svg{color:#dc2626;flex-shrink:0}.admin-login-error-notice strong{margin-bottom:4px;font-weight:700;display:block}.admin-login-error-notice p{color:#991b1b;margin:0;font-size:14px}.admin-session-loading{color:#64748b;background:#f8fafc;justify-content:center;align-items:center;min-height:100vh;padding:24px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;display:flex}
