*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--primary: #9B6B7A;--primary-dark: #7A4F5E;--primary-light:#F5E6EA;--error: #dc2626;--error-bg: #fee2e2;--success: #166534;--success-bg: #dcfce7;--warning: #92400e;--text: #1a1a1a;--text-soft: #666;--text-muted: #888;--text-light: #aaa;--border: #ddd;--border-light: #eee;--surface: #f8f8f8;--white: #fff}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--surface);color:var(--text)}button{cursor:pointer;font-family:inherit;border:none}input,select,textarea{font-family:inherit;outline:none}a{text-decoration:none;color:inherit}.page{display:flex;flex-direction:column;height:100vh;background:var(--surface)}.page-header{display:flex;align-items:center;justify-content:space-between;padding:0 16px;height:52px;background:var(--white);border-bottom:1px solid var(--border-light);flex-shrink:0}.page-header h1{font-size:17px;font-weight:700;color:var(--text)}.page-body{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:10px}.btn-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;background:none;color:var(--primary);transition:background .15s}.btn-icon:hover{background:var(--primary-light)}.btn-icon.muted{color:var(--text-soft)}.btn-icon.danger{color:var(--error)}.btn-icon.danger:hover{background:var(--error-bg)}.btn-primary{background:var(--primary);color:var(--white);border:none;padding:12px 20px;border-radius:12px;font-size:15px;font-weight:700;cursor:pointer;transition:background .15s}.btn-primary:hover:not(:disabled){background:var(--primary-dark)}.btn-primary:disabled{opacity:.6;cursor:default}.btn-secondary{background:none;color:var(--text-soft);border:1px solid var(--border);padding:12px 20px;border-radius:12px;font-size:15px;font-weight:600;cursor:pointer}.btn-secondary:hover{background:var(--surface)}.card{background:var(--white);border-radius:14px;padding:16px;box-shadow:0 1px 4px #0000000d}.card-row{display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--white);border-radius:12px;box-shadow:0 1px 4px #0000000a}.card-row.inactive{opacity:.55}.form-group{display:flex;flex-direction:column;gap:6px}.form-label{font-size:12px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.form-input{border:1px solid var(--border);border-radius:12px;padding:12px 14px;font-size:15px;color:var(--text);background:var(--white);transition:border-color .15s}.form-input:focus{border-color:var(--primary)}.form-error{font-size:13px;color:var(--error)}.fab{position:fixed;right:24px;bottom:24px;width:56px;height:56px;border-radius:28px;background:var(--primary);color:var(--white);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px #9b6b7a66;transition:background .15s,transform .15s;z-index:10}.fab:hover{background:var(--primary-dark);transform:scale(1.05)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:100;padding:16px}.modal-box{background:var(--white);border-radius:20px;padding:28px;width:100%;max-width:480px;max-height:90vh;overflow-y:auto;display:flex;flex-direction:column;gap:16px}.modal-header{display:flex;align-items:center;justify-content:space-between}.modal-title{font-size:19px;font-weight:700;color:var(--text)}.modal-section-label{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.modal-footer{display:flex;gap:10px;margin-top:4px}.modal-footer .btn-secondary,.modal-footer .btn-primary{flex:1;text-align:center}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{padding:7px 14px;border-radius:20px;border:1.5px solid var(--border);font-size:14px;font-weight:500;color:var(--text);cursor:pointer;background:none;transition:all .15s}.chip:hover{border-color:var(--primary)}.color-grid{display:grid;grid-template-columns:repeat(3,30px);gap:10px}.color-dot{width:30px;height:30px;border-radius:50%;cursor:pointer;border:2px solid transparent;transition:transform .1s}.color-dot:hover{transform:scale(1.1)}.color-dot.selected{border-color:#1a1a1a;transform:scale(1.1)}.search-wrap{position:relative}.search-dropdown{position:absolute;top:100%;left:0;right:0;background:var(--white);border:1px solid var(--border);border-radius:12px;box-shadow:0 4px 16px #0000001a;z-index:10;overflow:hidden;margin-top:4px}.search-item,.search-dropdown-item{display:block;width:100%;text-align:left;padding:10px 14px;cursor:pointer;transition:background .1s;background:none;border:none;font-family:inherit}.search-item:hover,.search-dropdown-item:hover{background:var(--primary-light)}.search-item-name{font-size:14px;font-weight:600;color:var(--text)}.search-item-sub{font-size:12px;color:var(--text-muted)}.selected-badge{background:var(--success-bg);color:var(--success);border-radius:10px;padding:8px 12px;font-size:14px;font-weight:600}.centered{display:flex;align-items:center;justify-content:center;height:100vh}.spinner{width:32px;height:32px;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{text-align:center;padding:60px 20px;color:var(--text-light);font-size:15px}.info-row{display:flex;align-items:center;gap:10px;padding:6px 0}.info-label{font-size:14px;color:var(--text-muted);width:90px;flex-shrink:0}.info-value{font-size:14px;color:var(--text);font-weight:600}.tag-inactive{font-size:11px;color:var(--text-muted)}
