:root{--orange:#ff6f0f;--white:#fff;--pale:#fff7f1}*{box-sizing:border-box}html,body{background:var(--white);min-height:100%;color:var(--orange);margin:0;font-family:Arial,Apple SD Gothic Neo,Noto Sans KR,sans-serif}button,input,select{font:inherit;border:2px solid var(--orange);border-radius:14px}input,select{background:var(--white);width:100%;min-height:52px;color:var(--orange);outline:none;padding:0 16px}:is(input:focus-visible,select:focus-visible){box-shadow:0 0 0 4px color-mix(in srgb,var(--orange) 20%,var(--white))}input::placeholder{color:var(--orange);opacity:.65}button{cursor:pointer;background:var(--orange);min-height:48px;color:var(--white);padding:0 18px;font-weight:800;transition:transform .12s,opacity .12s}button:hover:not(:disabled){transform:translateY(-1px)}button:disabled{opacity:.6;cursor:wait}.button-secondary{background:var(--white);color:var(--orange)}.button-compact{min-height:40px;padding:0 14px}.eyebrow{letter-spacing:.16em;margin:0 0 7px;font-size:12px;font-weight:900}h1,h2,p{margin-top:0}h1{margin-bottom:0;font-size:clamp(28px,5vw,42px);line-height:1.08}h2{margin-bottom:20px;font-size:22px}.login-page{place-items:center;min-height:100svh;padding:24px;display:grid}.auth-card{border:2px solid var(--orange);width:min(100%,380px);box-shadow:0 14px 48px color-mix(in srgb,var(--orange) 12%,transparent);border-radius:24px;padding:28px}.login-form{gap:13px;margin-top:28px;display:grid}.login-form label{gap:7px;font-size:13px;font-weight:800;display:grid}.login-form button{min-height:56px}.form-message{min-height:22px;margin:13px 0 0;font-size:13px;font-weight:700}.auth-link{text-align:center;margin:8px 0 0;font-size:14px}a{color:var(--orange);font-weight:800}.portal-page{min-height:100svh;padding:32px 20px 60px}.portal-shell{width:min(100%,1000px);margin:auto}.admin-shell{width:min(100%,1200px);margin:auto}.portal-header{border-bottom:2px solid var(--orange);justify-content:space-between;align-items:center;gap:20px;padding-bottom:26px;display:flex}.dashboard-message{min-height:22px;margin:14px 0;font-size:14px;font-weight:800}.summary-grid{grid-template-columns:repeat(4,1fr);gap:12px;margin:22px 0;display:grid}.summary-card,.portal-section,.license-row,.empty-state,.loading-state{border:2px solid var(--orange);background:var(--white);border-radius:18px}.summary-card{flex-direction:column;justify-content:space-between;min-height:120px;padding:18px;display:flex}.summary-card span{font-size:13px;font-weight:700}.summary-card strong{font-size:18px;line-height:1.35}.portal-section{margin-top:18px;padding:22px}.feature-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.feature-item{border:2px solid var(--orange);border-radius:14px;gap:6px;padding:14px;display:grid}.feature-item span{font-weight:900}.feature-item strong{font-size:12px}.locked{opacity:.42;filter:grayscale(.3)}.data-list{gap:10px;display:grid}.data-row{border:2px solid var(--orange);border-radius:14px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:12px 14px;display:grid}.data-row div{gap:5px;min-width:0;display:grid}.data-row small,.license-title small{text-overflow:ellipsis;font-size:12px;overflow:hidden}.status-pill{border:2px solid var(--orange);border-radius:999px;width:max-content;padding:5px 10px;font-size:12px;font-weight:900}.empty-state,.loading-state{place-items:center;min-height:90px;padding:20px;font-weight:800;display:grid}.tab-list{gap:8px;padding:20px 0 6px;display:flex;overflow-x:auto}.tab-list button{white-space:nowrap}.tab-list .active{background:var(--orange);color:var(--white)}.section-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.search-input{width:min(100%,260px)}.inline-form,.license-form{border-bottom:2px solid var(--orange);grid-template-columns:1fr 1fr auto;gap:10px;margin-bottom:18px;padding-bottom:18px;display:grid}.license-form{grid-template-columns:1.2fr 1fr 1.5fr .7fr auto}.license-row{gap:12px;padding:16px;display:grid}.license-title,.license-meta,.row-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.license-title small{max-width:300px;margin-left:auto}.license-meta{font-size:13px;font-weight:700}.row-actions{border-top:1px solid color-mix(in srgb,var(--orange) 40%,var(--white));padding-top:10px}.feature-controls{grid-template-columns:repeat(4,1fr);gap:7px;display:grid}.feature-controls label{border:1px solid var(--orange);border-radius:10px;align-items:center;gap:6px;padding:8px;font-size:12px;font-weight:700;display:flex}.feature-controls input{width:18px;min-height:18px;accent-color:var(--orange)}.nested-device{background:var(--pale);border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:10px;font-size:13px;display:flex}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:680px}th,td{text-align:left;border-bottom:1px solid var(--orange);padding:11px;font-size:13px}th{font-weight:900}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (max-width:820px){.summary-grid{grid-template-columns:repeat(2,1fr)}.license-form{grid-template-columns:1fr 1fr}.feature-controls{grid-template-columns:repeat(2,1fr)}.license-form button{grid-column:1/-1}.data-row{grid-template-columns:1fr auto}.data-row button{grid-column:1/-1}}@media (max-width:560px){.portal-page{padding:22px 12px 40px}.auth-card{padding:22px}.portal-header{align-items:flex-start}.summary-grid,.feature-grid,.inline-form,.license-form,.feature-controls{grid-template-columns:1fr}.portal-section{padding:15px}.section-heading{flex-direction:column;align-items:stretch}.search-input{width:100%}.license-title small{width:100%;margin-left:0}.license-key-box{flex-direction:column;align-items:stretch}}
