:root{--bg:#0b1424;--bg-card:#14233d;--bg-card-hover:#1a2c4c;--bg-elevated:#1e355e;--border:#24385f;--border-light:#ffffff0f;--text:#f5f2ed;--text-secondary:#9aa8c4;--text-muted:#6b7a96;--navy:#0f2444;--navy-deep:#081629;--tk-red:#c43a00;--tk-red-hover:#a23000;--ice-blue:#1a4a7a;--ice-blue-light:#3b7fb8;--tk-green:#1a6b3c;--gold:#d4a84b;--sand:#f5f2ed;--blue:var(--ice-blue-light);--blue-hover:var(--ice-blue);--green:#2ecc71;--green-bg:#2ecc711a;--green-border:#2ecc7140;--amber:var(--gold);--amber-bg:#d4a84b1a;--amber-border:#d4a84b4d;--red:var(--tk-red);--red-bg:#c43a001a;--red-border:#c43a004d;--radius:12px;--radius-sm:8px;--radius-xs:6px;--font:"Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, sans-serif;--font-display:"Bebas Neue", "Plus Jakarta Sans", sans-serif;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--safe-right:env(safe-area-inset-right,0px);--nav-height:50px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#app{background:var(--bg);height:100%;color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;line-height:1.5;overflow-x:hidden}body{padding-top:var(--safe-top);padding-left:var(--safe-left);padding-right:var(--safe-right)}h1,h2,h3{font-family:var(--font-display);letter-spacing:.02em;font-weight:400}h1{font-size:1.75rem}h2{font-size:1.35rem}h3{font-size:1.1rem}.num,.money{font-family:var(--font-display);letter-spacing:.02em;font-feature-settings:"tnum" 1}button,[role=button]{cursor:pointer;font-family:inherit;font-size:inherit;color:inherit;-webkit-tap-highlight-color:transparent;background:0 0;border:none}input,select,textarea{color:var(--text);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);outline:none;width:100%;padding:.75rem 1rem;font-family:inherit;font-size:1rem;transition:border-color .15s}input:focus,select:focus,textarea:focus{border-color:var(--blue)}a,button,[role=button],input[type=checkbox],input[type=radio]{min-width:44px;min-height:44px}.container{max-width:640px;margin:0 auto;padding:0 1rem}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1rem;box-shadow:inset 0 1px #ffffff05,0 2px 8px #00000040}.label{text-transform:uppercase;letter-spacing:.1em;color:var(--gold);font-size:.7rem;font-weight:700;font-family:var(--font)}.app-header{z-index:90;background:linear-gradient(180deg, var(--navy) 0%, var(--navy-deep) 100%);border-bottom:2px solid var(--tk-red);padding:.75rem 1rem;position:sticky;top:0;box-shadow:0 2px 12px #00000059}.app-header:after{content:"";background:var(--gold);opacity:.4;height:1px;display:block;position:absolute;bottom:-3px;left:0;right:0}.page-content{padding-bottom:calc(var(--nav-height) + var(--safe-bottom) + 3rem);min-height:100vh}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:.2s ease-out fadeIn}@keyframes spin{to{transform:rotate(360deg)}}.spinner{border:2px solid var(--border);border-top-color:var(--blue);border-radius:50%;width:24px;height:24px;animation:.6s linear infinite spin}.content-form-section{margin-bottom:1.25rem}.content-form-section>h3{color:var(--gold);margin-bottom:.75rem}.field{margin-bottom:1rem}.field-error{color:var(--red);margin-top:.35rem;font-size:.8rem}.photo-grid{gap:.75rem;margin-top:.75rem;display:grid}.photo-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);align-items:flex-start;gap:.75rem;padding:.6rem;display:flex}.photo-thumb{object-fit:cover;border-radius:var(--radius-xs);border:1px solid var(--border);background:var(--bg-card);flex-shrink:0;width:64px;height:64px}.photo-card-body{flex:1;min-width:0}.photo-name{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;margin-bottom:.4rem;font-size:.85rem;display:block;overflow:hidden}.photo-label-group{flex-wrap:wrap;gap:.35rem;margin-bottom:.4rem;display:flex}.photo-label-btn{border-radius:var(--radius-xs);border:1px solid var(--border);background:var(--bg-card);min-width:44px;min-height:44px;color:var(--text-secondary);padding:.35rem .6rem;font-size:.78rem}.photo-label-btn.active{background:var(--ice-blue-light);border-color:var(--ice-blue-light);color:var(--text)}.photo-actions{flex-wrap:wrap;gap:.5rem;display:flex}.photo-actions button{border:1px solid var(--border);border-radius:var(--radius-xs);background:var(--bg-card);min-width:44px;min-height:44px;color:var(--text-secondary);padding:.3rem .55rem;font-size:.78rem}
