.app-root,body.app-theme{--bg:#fff;--bg-soft:#f2f6fc;--card:#fff;--card-elev:#f7fafe;--border:#e5ecf5;--border-dash:#d6e1ee;--border-str:#c0d1e4;--ink:#16375c;--ink2:#4b6c91;--ink3:#89a0bc;--brand:#cf8150;--brand2:#b16838;--brand-deep:#16375c;--brand-pale:#f8e2d2;--brand-soft:#cf815024;--red:#c75647;--red-soft:#c756471f;--btn-cancel-hover:#16375c0f;--shadow-card:0 1px 2px #16375c14, 0 18px 44px -20px #16375c38, 0 6px 18px -12px #16375c24;--shadow-soft:0 1px 2px #16375c0f, 0 10px 28px -16px #16375c29;--font-serif:"Instrument Serif", "Times New Roman", serif;--font-sans:"Inter", -apple-system, system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--radius:24px;--radius-sm:14px;--bd-bg:#fff;--bd-bg-soft:#f2f6fc;--bd-bg-deep:#eef3fa;--bd-card:#fff;--bd-card-elev:#f7fafe;--bd-inset:#e9f1fb;--bd-border:#e5ecf5;--bd-border-dash:#d6e1ee;--bd-border-str:#c0d1e4;--bd-ink:#16375c;--bd-ink2:#4b6c91;--bd-ink3:#89a0bc;--bd-brand:#cf8150;--bd-brand2:#b16838;--bd-brand-deep:#16375c;--bd-brand-pale:#f8e2d2;--bd-brand-soft:#cf815024;--bd-brand-btn-text:#fff;--bd-brand-ink:#a85a2e;--bd-green:#4f9a8d;--bd-green-soft:#4f9a8d2e;--bd-red:#c75647;--bd-red-soft:#c756471f;--bd-red-ink:#b4291f;--bd-shadow:0 1px 2px #16375c14, 0 18px 44px -20px #16375c38, 0 6px 18px -12px #16375c24;--bd-shadow-soft:0 1px 2px #16375c0f, 0 10px 28px -16px #16375c29;--bd-font-serif:"Instrument Serif", "Times New Roman", serif;--bd-font-sans:"Inter", -apple-system, system-ui, sans-serif;--bd-font-mono:"JetBrains Mono", ui-monospace, monospace}.app-root{background:var(--bd-bg);color:var(--bd-ink);min-height:100vh}body.app-theme{background:var(--bd-bg);color:var(--bd-ink)}body.app-theme .modal-overlay{background:#16375c73}.app-root .user-menu-item:hover,body.app-theme .user-menu-item:hover{background:#16375c0f!important}.app-root .user-menu-item--danger:hover,body.app-theme .user-menu-item--danger:hover{background:#c756471a!important}.app-root .btn-primary:hover,body.app-theme .btn-primary:hover{background:var(--bd-brand);color:var(--bd-brand-btn-text);border-color:var(--bd-brand);box-shadow:0 6px 24px -6px #cf815073,0 0 0 1px #cf81501f}.app-root .btn-primary:active,body.app-theme .btn-primary:active{box-shadow:0 2px 8px -2px #cf81504d}.app-root .property-card:hover{box-shadow:0 2px 4px #16375c1a,0 26px 60px -16px #16375c47,0 0 0 1px #cf815033;background:var(--bd-card-elev)!important;border-color:#cf815042!important}.app-root.app-dark,body.app-theme.app-dark{--bg:#14171f;--bg-soft:#1a1e28;--card:#1d2130;--card-elev:#222637;--border:#ffffff12;--border-dash:#ffffff17;--border-str:#ffffff24;--ink:#ece6d6;--ink2:#a4aab9;--ink3:#6a7184;--brand:#f0b758;--brand2:#e09a3a;--brand-deep:#c97f24;--brand-pale:#f6d49a;--brand-soft:#f0b75824;--red:#cfa07a;--red-soft:#cfa07a1a;--btn-cancel-hover:#ece6d60f;--shadow-card:0 1px 1px #00000059, 0 22px 60px -18px #0000008c, 0 6px 18px -10px #0000004d;--shadow-soft:0 1px 1px #0000004d, 0 14px 38px -16px #00000073;--bd-bg:#14171f;--bd-bg-soft:#1a1e28;--bd-bg-deep:#101319;--bd-card:#1d2130;--bd-card-elev:#222637;--bd-inset:#171b25;--bd-border:#ffffff12;--bd-border-dash:#ffffff17;--bd-border-str:#ffffff24;--bd-ink:#ece6d6;--bd-ink2:#a4aab9;--bd-ink3:#a4aab9;--bd-brand:#f0b758;--bd-brand2:#e09a3a;--bd-brand-deep:#c97f24;--bd-brand-pale:#f6d49a;--bd-brand-soft:#f0b75824;--bd-brand-btn-text:#14171f;--bd-brand-ink:#f0b758;--bd-green:#f0b758;--bd-green-soft:#f0b75824;--bd-red:#cfa07a;--bd-red-soft:#cfa07a1a;--bd-red-ink:#cfa07a;--bd-shadow:0 1px 1px #00000059, 0 22px 60px -18px #0000008c, 0 6px 18px -10px #0000004d;--bd-shadow-soft:0 1px 1px #0000004d, 0 14px 38px -16px #00000073}body.app-theme.app-dark .modal-overlay{background:#0a0c12bf}.app-root.app-dark .user-menu-item:hover,body.app-theme.app-dark .user-menu-item:hover{background:#ffffff0f!important}.app-root.app-dark .user-menu-item--danger:hover,body.app-theme.app-dark .user-menu-item--danger:hover{background:#e055551a!important}.app-root.app-dark .btn-primary:hover,body.app-theme.app-dark .btn-primary:hover{background:var(--bd-brand);color:var(--bd-brand-btn-text);border-color:var(--bd-brand);box-shadow:0 6px 24px -6px #f0b75880,0 0 0 1px #f0b7581f}.app-root.app-dark .btn-primary:active,body.app-theme.app-dark .btn-primary:active{box-shadow:0 2px 8px -2px #f0b7584d}.app-root.app-dark .property-card:hover{box-shadow:0 2px 2px #0003,0 32px 80px -8px #000000b3,0 18px 40px -10px #00000073,0 0 0 1px #f0b7581f;background:#20253a!important;border-color:#f0b7582e!important}:root{--bg:#14171f;--bg-soft:#1a1e28;--card:#1d2130;--card-elev:#222637;--border:#ffffff12;--border-dash:#ffffff17;--border-str:#ffffff24;--ink:#ece6d6;--ink2:#a4aab9;--ink3:#6a7184;--brand:#f0b758;--brand2:#e09a3a;--brand-deep:#c97f24;--brand-pale:#f6d49a;--brand-soft:#f0b75824;--red:#cfa07a;--red-soft:#cfa07a1a;--btn-cancel-hover:#ece6d60f;--shadow-card:0 1px 1px #00000059, 0 22px 60px -18px #0000008c, 0 6px 18px -10px #0000004d;--shadow-soft:0 1px 1px #0000004d, 0 14px 38px -16px #00000073;--font-serif:"Instrument Serif", "Times New Roman", serif;--font-sans:"Inter", -apple-system, system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--radius:24px;--radius-sm:14px;--bd-bg:#14171f;--bd-bg-soft:#1a1e28;--bd-bg-deep:#101319;--bd-card:#1d2130;--bd-card-elev:#222637;--bd-inset:#171b25;--bd-border:#ffffff12;--bd-border-dash:#ffffff17;--bd-border-str:#ffffff24;--bd-ink:#ece6d6;--bd-ink2:#a4aab9;--bd-ink3:#a4aab9;--bd-brand:#f0b758;--bd-brand2:#e09a3a;--bd-brand-deep:#c97f24;--bd-brand-pale:#f6d49a;--bd-brand-soft:#f0b75824;--bd-brand-btn-text:#14171f;--bd-brand-ink:#f0b758;--bd-green:#f0b758;--bd-green-soft:#f0b75824;--bd-red:#cfa07a;--bd-red-soft:#cfa07a1a;--bd-red-ink:#cfa07a;--bd-shadow:0 1px 1px #00000059, 0 22px 60px -18px #0000008c, 0 6px 18px -10px #0000004d;--bd-shadow-soft:0 1px 1px #0000004d, 0 14px 38px -16px #00000073;--bd-font-serif:"Instrument Serif", "Times New Roman", serif;--bd-font-sans:"Inter", -apple-system, system-ui, sans-serif;--bd-font-mono:"JetBrains Mono", ui-monospace, monospace}@keyframes staggerIn{0%{opacity:0;transform:translateY(40px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes growBar{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes pageEnter{0%{opacity:0;transform:translateY(44px)scale(.975)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes vcBackdropIn{0%{opacity:0;-webkit-backdrop-filter:blur();backdrop-filter:blur()}to{opacity:1;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}}@keyframes vcModalIn{0%{opacity:0;transform:translateY(32px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes tabContentIn{0%{opacity:0;transform:translateY(18px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}.page-enter{transform-origin:top;animation:.72s cubic-bezier(.22,.61,.36,1) both pageEnter}*,:before,:after{box-sizing:border-box;margin:0;padding:0}input[type=number]{-moz-appearance:textfield}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}html{-webkit-font-smoothing:antialiased;scrollbar-gutter:stable;font-size:16px;overflow-x:clip}body{font-family:var(--font-sans);background:var(--bg);color:var(--ink);max-width:100%;min-height:100vh;overflow-x:clip}*{min-width:0}.app{background:var(--bg);flex-direction:column;min-height:100vh;display:flex}.app-header{gap:32px!important;padding:0 40px!important}.app-main{padding:48px 40px 80px!important}@media (width<=900px){.app-header{gap:16px!important;padding:0 20px!important}.app-main{padding:32px 20px 60px!important}}@media (width<=600px){.app-header{gap:8px!important;padding:0 12px!important}.app-header-nav{display:none!important}.app-header-year{margin-right:4px!important;padding:4px 8px!important}.app-main{padding:24px 12px 60px!important}}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-soft)}::-webkit-scrollbar-thumb{background:var(--border-str);border-radius:3px}.modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0a0c12bf;justify-content:center;align-items:center;animation:.18s both fadeIn;display:flex;position:fixed;inset:0}.modal{background:var(--card);border:1px solid var(--border-str);border-radius:var(--radius);box-shadow:var(--shadow-card);width:min(480px,92vw);max-height:90vh;animation:.22s cubic-bezier(.2,.7,.3,1) both staggerIn;overflow-y:auto}.modal-sm{width:min(400px,92vw)}.modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:22px 28px 18px;display:flex}.modal-header h2{font-family:var(--font-serif);letter-spacing:-.015em;color:var(--ink);font-size:20px;font-weight:400}.modal-close{cursor:pointer;color:var(--ink3);background:0 0;border:none;border-radius:999px;justify-content:center;align-items:center;width:32px;height:32px;font-size:18px;transition:background .15s;display:flex}.modal-close:hover{background:var(--border)}.modal-body{flex-direction:column;gap:16px;padding:24px 28px;display:flex}.modal-footer{border-top:1px solid var(--border);justify-content:flex-end;gap:10px;padding:14px 28px;display:flex}.form-field{flex-direction:column;gap:7px;display:flex}.form-label{letter-spacing:.1em;text-transform:uppercase;color:var(--ink3);font-size:11px;font-weight:600}.form-input{background:var(--bg-soft);border:1px solid var(--border-str);color:var(--ink);font-family:var(--font-sans);border-radius:10px;outline:none;width:100%;padding:10px 14px;font-size:14px;transition:border-color .15s}.form-input:focus{border-color:var(--brand)}.form-input option{background:var(--card)}.input-wrap{position:relative}.input-unit{color:var(--ink3);pointer-events:none;font-size:13px;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.toggle-group{gap:8px;display:flex}.toggle-btn{background:var(--bg-soft);border:1px solid var(--border-str);color:var(--ink2);cursor:pointer;font-size:13px;font-weight:500;font-family:var(--font-sans);border-radius:10px;flex:1;padding:9px 14px;transition:all .15s}.toggle-btn:hover{border-color:var(--brand);color:var(--ink)}.toggle-btn.active-green{background:var(--brand-soft);border-color:var(--brand);color:var(--brand);font-weight:600}.toggle-btn.active-red{background:var(--red-soft);border-color:var(--red);color:var(--red);font-weight:600}.btn{font-family:var(--font-sans);cursor:pointer;letter-spacing:.01em;border:1px solid #0000;border-radius:999px;align-items:center;gap:6px;padding:10px 18px;font-size:13px;font-weight:500;display:inline-flex}.btn-primary{color:var(--ink);border-color:var(--border-str);background:0 0;font-weight:600;transition:background .28s cubic-bezier(.2,.7,.3,1),color .28s cubic-bezier(.2,.7,.3,1),border-color .28s cubic-bezier(.2,.7,.3,1),box-shadow .28s cubic-bezier(.2,.7,.3,1)}.btn-primary:hover{background:var(--brand);color:#14171f;border-color:var(--brand);box-shadow:0 6px 24px -6px #f0b75880,0 0 0 1px #f0b7581f}.btn-primary:active{transition-duration:.1s;box-shadow:0 2px 8px -2px #f0b7584d}.btn:disabled{opacity:.35;cursor:not-allowed;pointer-events:none}.btn-secondary{color:var(--ink);border-color:var(--border-str);background:0 0;transition:opacity .18s}.btn-secondary:hover{opacity:.75}.btn-cancel{background:0 0;transition:background .18s}.btn-cancel:hover:not(:disabled){background:var(--btn-cancel-hover)}.btn-choice{background:var(--bg-soft);color:var(--ink);border:1px solid var(--border);font-weight:600;transition:background .18s,border-color .18s,color .18s}.btn-choice:hover:not(:disabled){background:var(--brand-soft);border-color:var(--brand);color:var(--brand)}.btn-reset{color:var(--ink3);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:6px;padding:4px 10px;font-family:inherit;font-size:11px;transition:color .15s,border-color .15s}.btn-reset:hover:not(:disabled){color:var(--ink);border-color:var(--ink2)}.btn-icon-sm{width:20px;height:20px;color:var(--ink3);cursor:pointer;background:0 0;border:none;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:14px;line-height:1;transition:color .15s;display:inline-flex}.btn-icon-sm:hover{color:var(--ink)}.btn-inline-edit{opacity:.6;transition:opacity .15s}.btn-inline-edit:hover,.btn-inline-edit:focus-visible{opacity:1}.btn-icon-sm.danger{color:var(--ink3)}.btn-icon-sm.danger:hover{color:var(--red)}.property-card{will-change:transform, box-shadow;transition:transform .38s cubic-bezier(.2,.7,.3,1),box-shadow .38s cubic-bezier(.2,.7,.3,1),border-color .28s,background .28s}.property-card:hover{transform:translateY(-8px)scale(1.004);box-shadow:0 2px 2px #0003,0 32px 80px -8px #000000b3,0 18px 40px -10px #00000073,0 0 0 1px #f0b7581f;background:#20253a!important;border-color:#f0b7582e!important}@media (width<=640px){.modal-overlay{align-items:flex-end!important}.modal{border-radius:20px 20px 0 0!important;width:100vw!important;max-width:100vw!important;max-height:88vh!important}.tab-bar-inner{padding:0 8px!important}.app-header-center{display:none!important}.property-card:hover{box-shadow:var(--shadow-card);transform:none;border-color:var(--border)!important;background:var(--card)!important}}.user-menu-item:hover{background:#ffffff0f!important}.user-menu-item--danger:hover{background:#e055551a!important}
