@import url(https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&family=Playfair+Display:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500&display=swap);body{margin:0;padding:0}code{font-family:JetBrains Mono,monospace;font-family:var(--font-mono,"JetBrains Mono",monospace)}.navbar{background:var(--ink);box-shadow:0 2px 12px #0003;height:var(--navbar-height);justify-content:space-between;padding:0 32px;position:sticky;top:0;z-index:100}.navbar,.navbar-brand a{align-items:center;color:#fff;display:flex}.navbar-brand a{font-family:var(--font-display);font-size:1.35rem;font-weight:700;gap:10px;letter-spacing:-.01em}.navbar-brand a:before{background:var(--accent);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 24 24'%3E%3Cpath d='M19 5v14H5V5h14m0-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-4.86 8.86-3 3.87L9 13.14 6 17h12l-3.86-5.14z'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:18px;border-radius:6px;content:"";display:block;height:28px;width:28px}.navbar-links{align-items:center;display:flex;gap:4px}.navbar-links a{border-radius:var(--radius-sm);color:#fffc;font-size:.9rem;font-weight:500;padding:8px 14px;transition:all var(--transition)}.navbar-links a:hover{background:#ffffff14;color:#fff}.user-nav-section,.user-profile-link{align-items:center;display:flex;gap:6px}.user-profile-link{background:#ffffff14;border-radius:20px;color:#fff!important;font-size:.875rem;font-weight:600;padding:6px 14px}.logout-button{background:#0000;border:1.5px solid #ffffff40;border-radius:var(--radius-sm);color:#fffc;cursor:pointer;font-family:var(--font-body);font-size:.85rem;font-weight:600;padding:7px 16px;transition:all var(--transition)}.logout-button:hover{background:var(--danger);border-color:var(--danger);color:#fff}.navbar-toggle{background:none;border:none;color:#fff;cursor:pointer;display:none;font-size:1.5rem;padding:4px}@media (max-width:768px){.navbar{padding:0 16px}.navbar-brand a{font-size:1.15rem}.navbar-brand a:before{background-size:15px;height:24px;width:24px}.navbar-toggle{display:block}.navbar-links{background:var(--ink-light);box-shadow:var(--shadow-lg);flex-direction:column;gap:4px;left:0;padding:16px;position:fixed;right:0;top:var(--navbar-height);transform:translateY(-110%);transition:transform .3s ease;z-index:99}.navbar-links.open{transform:translateY(0)}.navbar-links a{border-radius:var(--radius-sm);padding:12px 16px;width:100%}.user-nav-section{flex-direction:column;gap:8px;width:100%}.user-profile-link{justify-content:center;width:100%}.logout-button{width:100%}}.app-container{display:flex;flex-direction:column;min-height:100vh}.main-content{flex:1 1}.footer{background:var(--ink);border-top:3px solid var(--accent);color:#fff9;font-size:.8rem;letter-spacing:.03em;padding:20px 24px;text-align:center}.footer p{margin:0}.landing-page{margin:0 auto;max-width:1200px;padding:0 24px}.hero{background:var(--ink);color:#fff;margin:0 -24px;overflow:hidden;padding:100px 32px 80px;position:relative;text-align:center}.hero:before{background:repeating-linear-gradient(90deg,#0000,#0000 60px,#ffffff05 0,#ffffff05 61px);inset:0;pointer-events:none}.hero:after,.hero:before{content:"";position:absolute}.hero:after{background:linear-gradient(90deg,var(--accent),#f59e0b,var(--accent));bottom:0;height:4px;left:0;right:0}.hero h1{font-family:var(--font-display);font-size:clamp(2rem,5vw,3.2rem);font-weight:800;line-height:1.15;margin-bottom:16px;margin-left:auto;margin-right:auto;max-width:700px}.hero h1,.hero p{position:relative}.hero p{color:#ffffffb3;font-size:1.15rem;line-height:1.7;margin:0 auto 36px;max-width:560px}.cta-buttons{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;position:relative}.cta-buttons .btn-primary{background:var(--accent);border-radius:var(--radius-sm);color:#fff;font-size:1rem;padding:14px 32px}.cta-buttons .btn-primary:hover{background:var(--accent-hover)}.cta-buttons .btn-secondary{border-radius:var(--radius-sm);font-size:1rem;padding:14px 32px}.features{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));padding:60px 0 40px}.feature{background:#fff;border:1px solid var(--border);border-radius:var(--radius-md);padding:32px 28px;position:relative;transition:all .3s ease}.feature:before{background:var(--accent);border-radius:0 0 3px 3px;content:"";height:3px;left:24px;opacity:0;position:absolute;right:24px;top:0;transition:opacity .3s ease}.feature:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.feature:hover:before{opacity:1}.feature h3{color:var(--ink);font-family:var(--font-display);font-size:1.25rem;margin-bottom:12px}.feature p{color:var(--ink-muted);font-size:.95rem;line-height:1.7}.login-container{background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);margin:60px auto;max-width:420px;padding:40px 36px}.login-container h2{color:var(--ink);font-family:var(--font-display);font-size:1.8rem;margin-bottom:32px;text-align:center}.login-container .btn-primary{background:var(--accent);border:none;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-family:var(--font-body);font-size:1rem;font-weight:600;padding:12px;width:100%}.login-container .btn-primary:hover{background:var(--accent-hover)}.login-container .error-message{margin-bottom:20px;text-align:center}.about-page{margin:0 auto;max-width:900px;padding:60px 0}.about-page h1{color:var(--ink);font-family:var(--font-display);font-size:2.5rem;font-weight:800;margin-bottom:48px;position:relative;text-align:center}.about-page h1:after{background:var(--accent);content:"";display:block;height:3px;margin:16px auto 0;width:60px}.about-section{animation:fadeInUp .5s ease-out both;margin-bottom:40px}.about-section h2{border-bottom:2px solid var(--border);color:var(--ink);font-family:var(--font-display);font-size:1.4rem;margin-bottom:16px;padding-bottom:10px}.about-section p{color:var(--ink-muted);font-size:.95rem;line-height:1.8}.team-section{margin-top:60px}.team-section h2{color:var(--ink);font-family:var(--font-display);font-size:1.6rem;margin-bottom:8px;text-align:center}.team-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-top:32px}.team-member{background:#fff;border:1px solid var(--border);border-radius:var(--radius-md);padding:32px 20px;text-align:center;transition:all .3s ease}.team-member:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.member-avatar{background:var(--accent-light);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23d97706' viewBox='0 0 24 24'%3E%3Cpath d='M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4z'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:48%;border-radius:50%;height:88px;margin:0 auto 16px;width:88px}.team-member h3{color:var(--ink);font-size:1rem;margin-bottom:4px}.team-member p{color:var(--ink-muted);font-size:.85rem}.contact-page{margin:0 auto;max-width:900px;padding:60px 24px}.contact-page h1{color:var(--ink);font-family:var(--font-display);font-size:2.2rem;margin-bottom:8px}.contact-container{grid-gap:48px;display:grid;gap:48px;grid-template-columns:1fr 1.5fr;margin-top:36px}.contact-info h2{color:var(--ink);font-family:var(--font-display);font-size:1.2rem;margin-bottom:16px}.contact-info p{line-height:1.7;margin-bottom:20px}.contact-info address,.contact-info p{color:var(--ink-muted);font-size:.9rem}.contact-info address{background:var(--paper-warm);border-left:3px solid var(--accent);border-radius:var(--radius-sm);font-style:normal;line-height:1.8;padding:16px}.contact-form{background:#fff;border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:32px}@media (max-width:768px){.hero{padding:60px 20px 50px}.contact-container,.features{grid-template-columns:1fr}.contact-container{gap:32px}.login-container{margin:32px 16px;padding:28px 24px}.about-page{padding:32px 16px}.about-page h1{font-size:2rem}.team-grid{grid-template-columns:1fr 1fr}}@media (max-width:480px){.team-grid{grid-template-columns:1fr}}.sidebar{background:var(--ink);border-right:1px solid #ffffff0f;color:#fff;min-width:240px;overflow-x:hidden;overflow-y:auto;transition:all .3s ease;width:240px}.sidebar.collapsed{min-width:56px;width:56px}.sidebar-header{align-items:center;border-bottom:1px solid #ffffff14;display:flex;justify-content:space-between;padding:18px 16px}.sidebar-header h3{color:#fff6;font-size:.75rem;font-weight:600;letter-spacing:.1em;margin:0;text-transform:uppercase}.collapse-btn{background:none;border:1px solid #ffffff26;border-radius:4px;color:#ffffff80;cursor:pointer;font-size:.8rem;padding:4px 8px;transition:all var(--transition)}.collapse-btn:hover{background:#ffffff14;color:#fff}.sidebar-menu{list-style:none;margin:0;padding:8px 0}.sidebar-item{border-radius:var(--radius-sm);cursor:pointer;margin:1px 8px;transition:all var(--transition)}.sidebar-item:hover{background:#ffffff0f}.sidebar-item.active{background:var(--accent);box-shadow:0 2px 8px #d977064d}.sidebar-link{color:#ffffffb3;display:block;font-size:.875rem;font-weight:500;overflow:hidden;padding:10px 14px;text-decoration:none;text-overflow:ellipsis;transition:color var(--transition);white-space:nowrap}.sidebar-item:hover .sidebar-link{color:#fff}.sidebar-item.active .sidebar-link{color:#fff;font-weight:600}@media (max-width:768px){.sidebar{min-width:56px;width:56px}.sidebar.collapsed{border:none;min-width:0;overflow:hidden;padding:0;width:0}.sidebar-header h3{display:none}}@-webkit-keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}@keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}:root{--rc-drag-handle-size:12px;--rc-drag-handle-mobile-size:24px;--rc-drag-handle-bg-colour:#0003;--rc-drag-bar-size:6px;--rc-border-color:#ffffffb3;--rc-focus-color:#08f}.ReactCrop{cursor:crosshair;display:inline-block;position:relative}.ReactCrop *,.ReactCrop :after,.ReactCrop :before{-webkit-box-sizing:border-box;box-sizing:border-box}.ReactCrop--disabled,.ReactCrop--locked{cursor:inherit}.ReactCrop__child-wrapper{max-height:inherit;overflow:hidden}.ReactCrop__child-wrapper>img,.ReactCrop__child-wrapper>video{display:block;max-height:inherit;max-width:100%}.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>img,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>video,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__crop-selection{-ms-touch-action:none;touch-action:none}.ReactCrop__crop-mask{bottom:0;height:calc(100% + .5px);left:0;pointer-events:none;position:absolute;right:0;top:0;width:calc(100% + .5px)}.ReactCrop__crop-selection{cursor:move;left:0;position:absolute;top:0;-webkit-transform:translateZ(0);transform:translateZ(0)}.ReactCrop--disabled .ReactCrop__crop-selection{cursor:inherit}.ReactCrop--circular-crop .ReactCrop__crop-selection{border-radius:50%}.ReactCrop--circular-crop .ReactCrop__crop-selection:after{border:1px solid #ffffffb3;border:1px solid var(--rc-border-color);bottom:-1px;content:"";left:-1px;opacity:.3;pointer-events:none;position:absolute;right:-1px;top:-1px}.ReactCrop--no-animate .ReactCrop__crop-selection{outline:1px dashed #fff}.ReactCrop__crop-selection:not(.ReactCrop--no-animate .ReactCrop__crop-selection){-webkit-animation:marching-ants 1s;animation:marching-ants 1s;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;-webkit-animation-play-state:running;animation-play-state:running;-webkit-animation-timing-function:linear;animation-timing-function:linear;background-image:-webkit-gradient(linear,left top,right top,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,right top,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,left bottom,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,left bottom,color-stop(50%,#fff),color-stop(50%,#444));background-image:linear-gradient(90deg,#fff 50%,#444 0),linear-gradient(90deg,#fff 50%,#444 0),linear-gradient(180deg,#fff 50%,#444 0),linear-gradient(180deg,#fff 50%,#444 0);background-position:0 0,0 100%,0 0,100% 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;background-size:10px 1px,10px 1px,1px 10px,1px 10px;color:#fff}.ReactCrop__crop-selection:focus{outline:2px solid #08f;outline:2px solid var(--rc-focus-color);outline-offset:-1px}.ReactCrop--invisible-crop .ReactCrop__crop-mask,.ReactCrop--invisible-crop .ReactCrop__crop-selection{display:none}.ReactCrop__rule-of-thirds-hz:after,.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-vt:before{background-color:#fff6;content:"";display:block;position:absolute}.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-vt:before{height:100%;width:1px}.ReactCrop__rule-of-thirds-vt:before{left:33.3333333333%}.ReactCrop__rule-of-thirds-vt:after{left:66.6666666667%}.ReactCrop__rule-of-thirds-hz:after,.ReactCrop__rule-of-thirds-hz:before{height:1px;width:100%}.ReactCrop__rule-of-thirds-hz:before{top:33.3333333333%}.ReactCrop__rule-of-thirds-hz:after{top:66.6666666667%}.ReactCrop__drag-handle{background-color:#0003;background-color:var(--rc-drag-handle-bg-colour);border:1px solid #ffffffb3;border:1px solid var(--rc-border-color);height:12px;height:var(--rc-drag-handle-size);position:absolute;width:12px;width:var(--rc-drag-handle-size)}.ReactCrop__drag-handle:focus{background:#08f;background:var(--rc-focus-color)}.ReactCrop .ord-nw{cursor:nw-resize;left:0}.ReactCrop .ord-n,.ReactCrop .ord-nw{top:0;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.ReactCrop .ord-n{cursor:n-resize;left:50%}.ReactCrop .ord-ne{cursor:ne-resize;top:0}.ReactCrop .ord-e,.ReactCrop .ord-ne{right:0;-webkit-transform:translate(50%,-50%);transform:translate(50%,-50%)}.ReactCrop .ord-e{cursor:e-resize;top:50%}.ReactCrop .ord-se{bottom:0;cursor:se-resize;right:0;-webkit-transform:translate(50%,50%);transform:translate(50%,50%)}.ReactCrop .ord-s{cursor:s-resize;left:50%}.ReactCrop .ord-s,.ReactCrop .ord-sw{bottom:0;-webkit-transform:translate(-50%,50%);transform:translate(-50%,50%)}.ReactCrop .ord-sw{cursor:sw-resize;left:0}.ReactCrop .ord-w{cursor:w-resize;left:0;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.ReactCrop__disabled .ReactCrop__drag-handle{cursor:inherit}.ReactCrop__drag-bar{position:absolute}.ReactCrop__drag-bar.ord-n{height:6px;height:var(--rc-drag-bar-size);left:0;top:0;-webkit-transform:translateY(-50%);transform:translateY(-50%);width:100%}.ReactCrop__drag-bar.ord-e{height:100%;right:0;top:0;-webkit-transform:translate(50%);transform:translate(50%);width:6px;width:var(--rc-drag-bar-size)}.ReactCrop__drag-bar.ord-s{bottom:0;height:6px;height:var(--rc-drag-bar-size);left:0;-webkit-transform:translateY(50%);transform:translateY(50%);width:100%}.ReactCrop__drag-bar.ord-w{height:100%;left:0;top:0;-webkit-transform:translate(-50%);transform:translate(-50%);width:6px;width:var(--rc-drag-bar-size)}.ReactCrop--fixed-aspect .ReactCrop__drag-bar,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-e,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-n,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-s,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-w,.ReactCrop--new-crop .ReactCrop__drag-bar,.ReactCrop--new-crop .ReactCrop__drag-handle{display:none}@media (pointer:coarse){.ReactCrop .ord-e,.ReactCrop .ord-n,.ReactCrop .ord-s,.ReactCrop .ord-w{display:none}.ReactCrop__drag-handle{height:24px;height:var(--rc-drag-handle-mobile-size);width:24px;width:var(--rc-drag-handle-mobile-size)}}.dashboard{display:flex;flex-direction:column;min-height:calc(100vh - var(--navbar-height) - 60px)}.dashboard-content{display:flex;flex:1 1;overflow:hidden}.dashboard-main{background:var(--paper-warm);flex:1 1;min-width:0;overflow-y:auto;padding:28px 32px}.dashboard-main h2{border-bottom:2px solid var(--border);color:var(--ink);font-family:var(--font-display);font-size:1.5rem;font-weight:700;margin-bottom:20px;padding-bottom:12px;text-transform:capitalize}.data-table{margin-top:0}.search-bar{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:20px}.search-bar input{background:#fff;border:1.5px solid var(--border);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:.9rem;max-width:100%;padding:10px 16px;transition:all var(--transition);width:320px}.search-bar input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow);outline:none}.btn-add{background:var(--accent);border:none;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-family:var(--font-body);font-size:.9rem;font-weight:600;padding:10px 20px;transition:all var(--transition);white-space:nowrap}.btn-add:hover{background:var(--accent-hover);transform:translateY(-1px)}.table-scroll-wrapper{-webkit-overflow-scrolling:touch;border:1px solid var(--border);border-radius:var(--radius-md);overflow-x:auto}table{background:#fff;border-collapse:collapse;width:100%}td,th{border-bottom:1px solid var(--border);font-size:.875rem;max-width:200px;overflow:hidden;padding:11px 16px;text-align:left;text-overflow:ellipsis;white-space:nowrap}th{background:var(--paper-cool);border-bottom:2px solid var(--border);color:var(--ink-muted);font-size:.8rem;font-weight:600;letter-spacing:.03em;position:sticky;text-transform:capitalize;top:0;z-index:1}tr{transition:background var(--transition)}tr:hover{background:var(--accent-glow)}tr:last-child td{border-bottom:none}.actions-cell{white-space:nowrap}.btn-cancel,.btn-capture,.btn-delete,.btn-edit,.btn-save{border:none;border-radius:var(--radius-sm);cursor:pointer;font-family:var(--font-body);font-size:.8rem;font-weight:600;margin-right:4px;padding:6px 14px;transition:all var(--transition)}.btn-edit{background:var(--accent-light);color:var(--accent-hover)}.btn-edit:hover{background:var(--accent);color:#fff}.btn-delete{background:var(--danger-light);color:var(--danger)}.btn-delete:hover{background:var(--danger);color:#fff}.btn-capture{background:var(--success-light);color:var(--success)}.btn-capture:hover:not(:disabled),.btn-save{background:var(--success);color:#fff}.btn-save:hover{background:#047857}.btn-cancel{background:var(--ink-muted);color:#fff}.btn-cancel:hover{background:var(--ink-light)}.add-form{background:#fff;border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);margin-bottom:24px;padding:28px}.add-form h3{color:var(--ink);font-family:var(--font-display);font-size:1.15rem;margin-bottom:20px}.form-fields{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.form-field{display:flex;flex-direction:column;gap:6px}.form-field label{color:var(--ink-muted);font-size:.8rem;font-weight:600;letter-spacing:.02em;text-transform:capitalize}.form-field input,.form-field select,.form-field textarea{background:#fff;border:1.5px solid var(--border);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:.9rem;padding:9px 12px;transition:all var(--transition);width:100%}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow);outline:none}.form-field textarea{min-height:60px;resize:vertical}.form-field input:disabled{background:var(--paper-cool);color:var(--ink-muted)}.form-actions{display:flex;gap:10px;margin-top:24px}.readonly-value{color:var(--ink-muted);font-size:.85rem;font-style:italic}.pagination-controls{align-items:center;background:#fff;border:1px solid var(--border);border-radius:var(--radius-sm);display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin:14px 0;padding:10px 16px}.pagination-controls.bottom{margin-top:14px}.items-per-page{align-items:center;color:var(--ink-muted);display:flex;font-size:.85rem;gap:8px}.items-per-page select{border:1px solid var(--border);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:.85rem;padding:5px 8px}.pagination-navigation{align-items:center;display:flex;flex-wrap:wrap;gap:4px}.pagination-navigation button{background:#fff;border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;font-family:var(--font-body);font-size:.8rem;font-weight:500;padding:6px 12px;transition:all var(--transition)}.pagination-navigation button:hover:not(:disabled){background:var(--accent);border-color:var(--accent);color:#fff}.pagination-navigation button:disabled{cursor:not-allowed;opacity:.35}.page-info{color:var(--ink-muted);font-size:.8rem;font-weight:500;margin:0 10px}.error,.image-container,.loading{padding:32px;text-align:center}.error,.loading{font-size:1.1rem}.error{color:var(--danger)}@media (max-width:768px){.dashboard-content{flex-direction:column}.dashboard-main{padding:16px}.dashboard-main h2{font-size:1.25rem}.search-bar{flex-direction:column}.search-bar input{width:100%}.form-fields{grid-template-columns:1fr}td,th{font-size:.8rem;padding:8px 10px}.btn-cancel,.btn-capture,.btn-delete,.btn-edit,.btn-save{font-size:.75rem;margin-bottom:4px;padding:5px 10px}.actions-cell{display:flex;flex-wrap:wrap;gap:4px}}:root{--ink:#1a1a2e;--ink-light:#2d2d44;--ink-muted:#6b7280;--paper:#faf9f7;--paper-warm:#f5f3ef;--paper-cool:#f0f1f5;--accent:#d97706;--accent-hover:#b45309;--accent-light:#fef3c7;--accent-glow:#d977061f;--success:#059669;--success-light:#d1fae5;--danger:#dc2626;--danger-light:#fee2e2;--warning:#f59e0b;--info:#2563eb;--info-light:#dbeafe;--border:#e5e5e0;--border-strong:#d1d1cc;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 12px #00000014;--shadow-lg:0 12px 40px #0000001f;--shadow-xl:0 20px 60px #00000026;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--font-display:"Playfair Display",Georgia,serif;--font-body:"DM Sans",-apple-system,sans-serif;--font-mono:"JetBrains Mono",monospace;--transition:0.2s cubic-bezier(0.4,0,0.2,1);--navbar-height:64px}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;scroll-behavior:smooth}body{background:#faf9f7;background:var(--paper);color:#1a1a2e;color:var(--ink);font-family:DM Sans,-apple-system,sans-serif;font-family:var(--font-body);line-height:1.6}a{color:inherit;text-decoration:none;transition:color .2s cubic-bezier(.4,0,.2,1);transition:color var(--transition)}img{height:auto;max-width:100%}.container{margin:0 auto;max-width:1200px;padding:0 24px}.btn,button[type=submit]{align-items:center;border:none;border-radius:6px;border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;font-family:DM Sans,-apple-system,sans-serif;font-family:var(--font-body);font-size:.9rem;font-weight:600;gap:8px;justify-content:center;line-height:1.4;padding:10px 22px;transition:all .2s cubic-bezier(.4,0,.2,1);transition:all var(--transition);white-space:nowrap}.btn-primary,button[type=submit].btn-primary{background:#d97706;background:var(--accent);color:#fff}.btn-primary:hover{background:#b45309;background:var(--accent-hover);box-shadow:0 4px 12px #d977064d;transform:translateY(-1px)}.btn-secondary{background:#0000;border:2px solid #fffc;color:#fff}.btn-secondary:hover{background:#ffffff1f;border-color:#fff;transform:translateY(-1px)}button:disabled{cursor:not-allowed;opacity:.45;transform:none!important}.form-group{margin-bottom:20px}.form-group label{color:#2d2d44;color:var(--ink-light);display:block;font-size:.875rem;font-weight:600;margin-bottom:6px}.form-group input,.form-group select,.form-group textarea{background:#fff;border:1.5px solid #e5e5e0;border:1.5px solid var(--border);border-radius:6px;border-radius:var(--radius-sm);color:#1a1a2e;color:var(--ink);font-family:DM Sans,-apple-system,sans-serif;font-family:var(--font-body);font-size:.95rem;padding:10px 14px;transition:border-color .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1);transition:border-color var(--transition),box-shadow var(--transition);width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#d97706;border-color:var(--accent);box-shadow:0 0 0 3px #d977061f;box-shadow:0 0 0 3px var(--accent-glow);outline:none}.form-group textarea{min-height:120px;resize:vertical}.success-message{background:#d1fae5;background:var(--success-light);border-left:3px solid #059669;border-left:3px solid var(--success);color:#059669;color:var(--success);font-size:.9rem;margin-top:16px;padding:12px 16px}.error-message,.success-message{border-radius:6px;border-radius:var(--radius-sm);font-weight:500}.error-message{background:#fee2e2;background:var(--danger-light);border-left:3px solid #dc2626;border-left:3px solid var(--danger);color:#dc2626;color:var(--danger);font-size:.875rem;padding:10px 14px}.not-found{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:60vh;padding:100px 24px;text-align:center}.not-found h1{color:#1a1a2e;color:var(--ink);font-family:Playfair Display,Georgia,serif;font-family:var(--font-display);font-size:4rem;font-weight:800;margin-bottom:12px}.not-found p{color:#6b7280;color:var(--ink-muted);font-size:1.1rem;margin-bottom:32px;max-width:420px}.capture-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;display:flex;inset:0;justify-content:center;padding:16px;position:fixed;z-index:9999}.capture-modal{background:#fff;border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 20px 60px #00000026;box-shadow:var(--shadow-xl);max-height:95vh;max-width:1200px;outline:none;overflow-x:hidden;overflow-y:auto;position:relative;width:96vw}.capture-modal-header{align-items:center;background:#f5f3ef;background:var(--paper-warm);border-bottom:1px solid #e5e5e0;border-bottom:1px solid var(--border);border-radius:16px 16px 0 0;border-radius:var(--radius-lg) var(--radius-lg) 0 0;display:flex;justify-content:space-between;padding:16px 24px;position:sticky;top:0;z-index:2}.capture-modal-header h2{font-family:Playfair Display,Georgia,serif;font-family:var(--font-display);font-size:1.25rem;margin:0}.modal-close-btn{background:none;border:none;border-radius:6px;border-radius:var(--radius-sm);color:#6b7280;color:var(--ink-muted);cursor:pointer;font-size:1.6rem;padding:4px 8px;transition:all .2s cubic-bezier(.4,0,.2,1);transition:all var(--transition)}.modal-close-btn:hover{background:#fee2e2;background:var(--danger-light);color:#dc2626;color:var(--danger)}.pdf-capture-container{display:flex;flex-direction:column}.page-controls{align-items:center;background:#f0f1f5;background:var(--paper-cool);border-bottom:1px solid #e5e5e0;border-bottom:1px solid var(--border);display:flex;gap:16px;justify-content:center;padding:12px 24px}.page-nav-btn{background:#fff;border:1.5px solid #d1d1cc;border:1.5px solid var(--border-strong);border-radius:6px;border-radius:var(--radius-sm);cursor:pointer;font-family:DM Sans,-apple-system,sans-serif;font-family:var(--font-body);font-size:.875rem;font-weight:500;padding:8px 18px;transition:all .2s cubic-bezier(.4,0,.2,1);transition:all var(--transition)}.page-nav-btn:hover:not(:disabled){background:#d97706;background:var(--accent);border-color:#d97706;border-color:var(--accent);color:#fff}.page-nav-btn:disabled{cursor:not-allowed;opacity:.35}.page-indicator{color:#1a1a2e;color:var(--ink);font-size:.9rem;font-weight:600;min-width:120px;text-align:center}.crop-area-wrapper{background:#1a1a1a;display:flex;justify-content:center;max-height:80vh;overflow:auto;padding:8px 0;width:100%}.ReactCrop{max-width:100%}.ReactCrop__crop-selection{border:2px solid #d97706!important;border:2px solid var(--accent,#d97706)!important}.ReactCrop__drag-handle{background-color:#d97706!important;background-color:var(--accent,#d97706)!important;border:2px solid #fff!important;height:12px!important;width:12px!important}.preview-overlay{align-items:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#000000d9;cursor:pointer;display:flex;inset:0;justify-content:center;padding:16px;position:fixed;z-index:10000}.preview-modal{background:#fff;border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 20px 60px #00000026;box-shadow:var(--shadow-xl);cursor:default;max-height:92vh;max-width:95vw;overflow:hidden;position:relative}.preview-modal-header{align-items:center;background:#f5f3ef;background:var(--paper-warm);border-bottom:1px solid #e5e5e0;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:12px 20px}.preview-modal-header h3{color:#1a1a2e;color:var(--ink);font-family:Playfair Display,Georgia,serif;font-family:var(--font-display);font-size:1.1rem;margin:0}.preview-modal-body{align-items:center;background:#f0f0f0;display:flex;justify-content:center;max-height:calc(92vh - 56px);overflow:auto;padding:16px}.preview-modal-body img{border-radius:6px;border-radius:var(--radius-sm);max-height:80vh;max-width:100%;object-fit:contain}.btn-preview{background:#dbeafe;background:var(--info-light,#dbeafe);color:#2563eb;color:var(--info,#2563eb)}.btn-preview:hover{background:#2563eb;background:var(--info,#2563eb);color:#fff}@media (max-width:768px){.capture-modal{border-radius:0;max-height:100vh;width:100vw}.crop-area-wrapper{max-height:65vh}.capture-controls{align-items:stretch;flex-direction:column}.action-buttons{justify-content:stretch}.action-buttons button{flex:1 1}.page-controls{flex-wrap:wrap;gap:8px}.page-nav-btn{font-size:.8rem;padding:6px 12px}.preview-modal{border-radius:0;max-height:100vh;max-width:100vw}}.capture-controls{background:#f5f3ef;background:var(--paper-warm);border-radius:0 0 16px 16px;border-radius:0 0 var(--radius-lg) var(--radius-lg);border-top:1px solid #e5e5e0;border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;padding:16px 24px}.capture-controls,.zoom-control{align-items:center;display:flex;gap:12px}.zoom-control{flex:1 1;min-width:200px}.zoom-control label{color:#6b7280;color:var(--ink-muted);font-size:.875rem;font-weight:600;min-width:75px;white-space:nowrap}.zoom-control input[type=range]{accent-color:#d97706;accent-color:var(--accent);flex:1 1;max-width:200px}.action-buttons{display:flex;gap:10px}.capture-button{background:#059669;background:var(--success);border:none;border-radius:6px;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-family:DM Sans,-apple-system,sans-serif;font-family:var(--font-body);font-size:.9rem;font-weight:600;padding:10px 24px;transition:all .2s cubic-bezier(.4,0,.2,1);transition:all var(--transition)}.capture-button:hover:not(:disabled){background:#047857}.capture-button:disabled{background:#6b7280;background:var(--ink-muted);cursor:not-allowed}.cancel-button{background:#dc2626;background:var(--danger);border:none;border-radius:6px;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-family:DM Sans,-apple-system,sans-serif;font-family:var(--font-body);font-size:.9rem;font-weight:600;padding:10px 24px;transition:all .2s cubic-bezier(.4,0,.2,1);transition:all var(--transition)}.cancel-button:hover:not(:disabled){background:#b91c1c}.loading-message{align-items:center;color:#6b7280;color:var(--ink-muted);display:flex;flex-direction:column;font-size:1rem;gap:16px;padding:60px;text-align:center}.spinner{animation:spin .7s linear infinite;border:3px solid #e5e5e0;border-top-color:#d97706;border:3px solid var(--border);border-radius:50%;border-top-color:var(--accent);height:36px;width:36px}@keyframes spin{to{transform:rotate(1turn)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}::-webkit-scrollbar{height:6px;width:6px}::-webkit-scrollbar-track{background:#0000}::-webkit-scrollbar-thumb{background:#d1d1cc;background:var(--border-strong);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#6b7280;background:var(--ink-muted)}
/*# sourceMappingURL=main.95d82a51.css.map*/