:root{--color-bg: #f7f7f5;--color-surface: #ffffff;--color-border: #e4e2dd;--color-text: #24211c;--color-text-muted: #6b6660;--color-orange: #e8722c;--color-orange-soft: #fdeee2;--color-teal: #1f7a6c;--color-teal-soft: #e2f2ef;--color-pink: #d94f8c;--color-pink-soft: #fbe6f0;--color-yellow: #f4b942;--radius: 8px;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}*{box-sizing:border-box}body{margin:0;font-family:var(--font-sans);background:var(--color-bg);color:var(--color-text)}button{font-family:inherit}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.login-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;padding:40px;width:100%;max-width:380px;text-align:center}.login-logo{height:48px;margin-bottom:16px}.login-card h1{font-size:22px;margin:0 0 4px}.login-subtitle{color:var(--color-text-muted);font-size:14px;margin:0 0 24px}.login-form{display:flex;flex-direction:column;gap:14px;text-align:left}.login-form label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--color-text-muted)}.login-form input{font-size:15px;padding:10px 12px;border:1px solid var(--color-border);border-radius:var(--radius)}.login-error{color:#b3261e;font-size:13px;margin:0}.btn{border:none;border-radius:var(--radius);padding:10px 18px;font-size:14px;font-weight:600;cursor:pointer}.btn-primary{background:var(--color-orange);color:#fff}.btn-primary:hover{background:#d3651f}.btn-secondary{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text)}.btn-link{background:none;border:none;color:var(--color-orange);cursor:pointer;font-size:13px;padding:4px 0;text-align:left}.app-shell{min-height:100vh;display:flex;flex-direction:column}.app-header{display:flex;align-items:center;gap:24px;padding:12px 24px;background:var(--color-surface);border-bottom:1px solid var(--color-border)}.app-header-left{display:flex;align-items:center;gap:10px}.app-logo{height:28px}.app-title{font-weight:700;font-size:16px}.app-nav{display:flex;gap:4px;flex:1}.nav-link{padding:8px 14px;border-radius:var(--radius);color:var(--color-text-muted);text-decoration:none;font-size:14px;font-weight:500}.nav-link.nav-active{background:var(--color-orange-soft);color:var(--color-orange)}.app-header-right{display:flex;align-items:center;gap:12px;font-size:13px;color:var(--color-text-muted)}.app-main{flex:1;padding:24px;max-width:1200px;width:100%;margin:0 auto}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.page h1{font-size:20px;margin:0 0 16px}.tabs{display:flex;gap:4px}.tab{background:var(--color-surface);border:1px solid var(--color-border);padding:8px 16px;border-radius:var(--radius);cursor:pointer;font-size:13px}.tab-active{background:var(--color-orange);color:#fff;border-color:var(--color-orange)}.filters-bar{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:20px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:16px}.search-input{padding:8px 12px;border:1px solid var(--color-border);border-radius:var(--radius);min-width:240px;font-size:14px}.chips-field{display:flex;flex-direction:column;gap:6px}.chips-label{font-size:12px;color:var(--color-text-muted);font-weight:600;text-transform:uppercase;letter-spacing:.03em}.chips-row{display:flex;flex-wrap:wrap;gap:6px;max-width:460px}.chip{border:1px solid var(--color-border);background:var(--color-surface);border-radius:999px;padding:5px 12px;font-size:12px;cursor:pointer;color:var(--color-text)}.chip-active{background:var(--color-orange);border-color:var(--color-orange);color:#fff}.table-wrap{overflow-x:auto;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius)}.data-table{width:100%;border-collapse:collapse;font-size:13px}.data-table th{text-align:left;padding:10px 14px;border-bottom:1px solid var(--color-border);color:var(--color-text-muted);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.03em}.data-table td{padding:10px 14px;border-bottom:1px solid var(--color-border)}.badge{display:inline-block;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:600}.badge-teal{background:var(--color-teal-soft);color:var(--color-teal)}.badge-orange{background:var(--color-orange-soft);color:var(--color-orange)}.badge-pink{background:var(--color-pink-soft);color:var(--color-pink)}.category-block{margin-bottom:24px}.category-block h3{font-size:14px;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);margin-bottom:8px}.space-row{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:10px 14px;margin-bottom:6px}.space-row-header{display:flex;align-items:center;gap:10px;font-size:14px}.muted{color:var(--color-text-muted);font-size:13px}.availability-form{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:20px;display:flex;flex-direction:column;gap:16px;margin-bottom:20px}.form-row{display:flex;gap:20px;flex-wrap:wrap}.form-row label{display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--color-text-muted);font-weight:600}.form-row input,.form-row select{padding:8px 10px;border:1px solid var(--color-border);border-radius:var(--radius);font-size:14px}.dow-chips{display:flex;flex-direction:column;gap:6px}.hint{font-size:12px;color:var(--color-text-muted)}.availability-results{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.result-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:14px}.result-card h3{margin:0 0 8px;font-size:14px}.window-list{list-style:none;margin:0;padding:0;font-size:13px;display:flex;flex-direction:column;gap:4px}.upload-zone{background:var(--color-surface);border:2px dashed var(--color-border);border-radius:var(--radius);padding:40px;text-align:center}.import-review{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:20px;margin-top:16px}.summary-list{list-style:none;padding:0;display:flex;flex-direction:column;gap:4px;font-size:14px}.error-list{margin-top:12px;font-size:13px}.error-list ul{max-height:240px;overflow-y:auto}.actions-row{display:flex;gap:12px;margin-top:16px}.history-panel{margin-top:24px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:20px}.history-panel ul{list-style:none;padding:0;display:flex;flex-direction:column;gap:8px;font-size:13px}.history-panel li{display:flex;justify-content:space-between;align-items:center}.empty-state{color:var(--color-text-muted);text-align:center;padding:40px 20px}.spinner-wrap{display:flex;flex-direction:column;align-items:center;gap:12px;padding:60px 20px}.spinner{width:28px;height:28px;border:3px solid var(--color-border);border-top-color:var(--color-orange);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.spinner-label{color:var(--color-text-muted);font-size:13px}.toast-container{position:fixed;bottom:20px;right:20px;display:flex;flex-direction:column;gap:8px;z-index:1000}.toast{padding:10px 16px;border-radius:var(--radius);font-size:13px;color:#fff;box-shadow:0 4px 12px #00000026}.toast-success{background:var(--color-teal)}.toast-error{background:#b3261e}.toast-info{background:#333}@media(max-width:720px){.app-header{flex-wrap:wrap;gap:12px}.app-nav{order:3;width:100%}}
