:root{color-scheme:light dark;--occpl-color-primary: #d61f45;--occpl-color-primary-strong: #b3123a;--occpl-color-on-primary: #ffffff;--occpl-color-accent: #4338ca;--occpl-color-on-accent: #ffffff;--occpl-color-background: #edeff3;--occpl-color-surface: #ffffff;--occpl-color-surface-glass: rgb(255 255 255 / 72%);--occpl-color-border: #e0e3ec;--occpl-color-text: #1e2140;--occpl-color-text-muted: #5d6285;--occpl-color-link: #b3123a;--occpl-color-danger: #b42318;--occpl-color-danger-surface: #fde7ec;--occpl-color-success: #0b7a55;--occpl-color-warning: #a35f00;--occpl-color-focus: #4338ca;--occpl-color-info: #4338ca;--occpl-color-success-surface: #e3f5ee;--occpl-color-warning-surface: #fff3dc;--occpl-color-info-surface: #ecebfb;--occpl-color-neutral-surface: #eef0f5;--occpl-color-sky: #0284c7;--occpl-color-teal: #0e9f8e;--occpl-color-amber: #c77700;--occpl-color-plum: #8b1a3a;--occpl-gradient-brand: linear-gradient(170deg, #e02550 0%, #b3123a 55%, #7a0e33 100%);--occpl-gradient-button: linear-gradient(135deg, #e02550, #b3123a);--occpl-page-glow: radial-gradient(900px 640px at 0% 0%, rgb(214 31 69 / 20%) 0%, transparent 62%), radial-gradient(760px 560px at 100% 100%, rgb(67 56 202 / 16%) 0%, transparent 60%);--occpl-font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--occpl-font-size-sm: .875rem;--occpl-font-size-md: 1rem;--occpl-font-size-lg: 1.25rem;--occpl-space-1: .25rem;--occpl-space-2: .5rem;--occpl-space-3: .75rem;--occpl-space-4: 1rem;--occpl-space-6: 1.5rem;--occpl-space-8: 2.5rem;--occpl-radius-sm: 10px;--occpl-radius-md: 18px;--occpl-header-height: 4rem;--occpl-content-max-width: 82rem;--occpl-nav-width: 16rem;--occpl-shadow-sm: 0 6px 24px rgb(214 31 69 / 8%);--occpl-shadow-md: 0 10px 40px rgb(67 56 202 / 12%)}@media(prefers-color-scheme:dark){:root{--occpl-color-primary: #e8456a;--occpl-color-primary-strong: #d61f45;--occpl-color-background: #12121f;--occpl-color-surface: #1c1c2e;--occpl-color-surface-glass: rgb(28 28 46 / 78%);--occpl-color-border: #2e2e48;--occpl-color-text: #ececf7;--occpl-color-text-muted: #a3a4c4;--occpl-color-link: #ff7d9a;--occpl-color-danger: #ff8a7a;--occpl-color-danger-surface: #3d1820;--occpl-color-success: #4fd1a1;--occpl-color-warning: #f0b04a;--occpl-color-info: #9d96ff;--occpl-color-focus: #9d96ff;--occpl-color-success-surface: #153327;--occpl-color-warning-surface: #3a2c12;--occpl-color-info-surface: #25234a;--occpl-color-neutral-surface: #25253b;--occpl-color-sky: #5cc2f5;--occpl-color-teal: #43d1c0;--occpl-color-amber: #f0b04a;--occpl-color-plum: #ff8aa8;--occpl-page-glow: radial-gradient(900px 640px at 0% 0%, rgb(214 31 69 / 22%) 0%, transparent 62%), radial-gradient(760px 560px at 100% 100%, rgb(67 56 202 / 26%) 0%, transparent 60%);--occpl-shadow-sm: 0 6px 24px rgb(0 0 0 / 30%);--occpl-shadow-md: 0 10px 40px rgb(0 0 0 / 35%)}}h1{font-size:1.75rem;font-weight:700;letter-spacing:-.02em;margin:0}h2{font-size:var(--occpl-font-size-lg);margin:0 0 var(--occpl-space-3)}h3{font-size:var(--occpl-font-size-md);margin:0 0 var(--occpl-space-2)}.muted{color:var(--occpl-color-text-muted)}.small{font-size:var(--occpl-font-size-sm)}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:var(--occpl-font-size-sm);word-break:break-all}.stack{display:flex;flex-direction:column;gap:var(--occpl-space-4)}.row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--occpl-space-2)}.spacer{flex:1}.grid{display:grid;gap:var(--occpl-space-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,16rem),1fr))}.card{background:var(--occpl-color-surface-glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--occpl-color-border);border-radius:var(--occpl-radius-md);padding:var(--occpl-space-4);box-shadow:var(--occpl-shadow-sm);min-width:0}.stat{font-size:2.125rem;font-weight:700;line-height:1.2}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--occpl-space-1);min-height:2.5rem;padding:0 var(--occpl-space-4);border:1px solid var(--occpl-color-border);border-radius:var(--occpl-radius-sm);background:var(--occpl-color-surface);color:var(--occpl-color-text);font:inherit;text-decoration:none;cursor:pointer;white-space:nowrap}.btn:hover:not(:disabled){border-color:var(--occpl-color-primary);box-shadow:var(--occpl-shadow-sm)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn.primary{background:var(--occpl-gradient-button);border-color:var(--occpl-color-primary-strong);color:var(--occpl-color-on-primary);font-weight:600}.btn.danger{color:var(--occpl-color-danger);border-color:var(--occpl-color-danger)}.btn.small{min-height:2rem;padding:0 var(--occpl-space-3)}.btn.link{border-color:transparent;background:transparent;color:var(--occpl-color-link);padding:0 var(--occpl-space-2)}.form{display:grid;gap:var(--occpl-space-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,16rem),1fr));align-items:start}.form .full{grid-column:1/-1}.field{display:flex;flex-direction:column;gap:var(--occpl-space-1);min-width:0}.field>label,.field>.label{font-weight:600;font-size:var(--occpl-font-size-sm)}.field .hint{font-size:var(--occpl-font-size-sm);color:var(--occpl-color-text-muted)}input:not([type=checkbox]):not([type=radio]),select,textarea{width:100%;min-height:2.5rem;padding:var(--occpl-space-2) var(--occpl-space-3);border:1px solid var(--occpl-color-border);border-radius:var(--occpl-radius-sm);background:var(--occpl-color-surface);color:var(--occpl-color-text);font:inherit}input:not([type=checkbox]):not([type=radio]):focus-visible,select:focus-visible,textarea:focus-visible{border-color:var(--occpl-color-accent);box-shadow:0 0 0 4px var(--occpl-color-info-surface);outline:none}input:not([type=checkbox]):not([type=radio]).ng-invalid.ng-touched,select.ng-invalid.ng-touched,textarea.ng-invalid.ng-touched{border-color:var(--occpl-color-danger)}textarea{min-height:8rem;resize:vertical}textarea.code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:var(--occpl-font-size-sm);min-height:16rem}.check{display:flex;align-items:center;gap:var(--occpl-space-2);min-height:2rem}.field-error{color:var(--occpl-color-danger);font-size:var(--occpl-font-size-sm);margin:0}.form-actions{display:flex;flex-wrap:wrap;gap:var(--occpl-space-2);grid-column:1/-1}.filters{display:flex;flex-wrap:wrap;gap:var(--occpl-space-2);align-items:end}.filters .field{flex:1 1 12rem}.table-wrap{overflow-x:auto;border:1px solid var(--occpl-color-border);border-radius:var(--occpl-radius-md);background:var(--occpl-color-surface-glass);box-shadow:var(--occpl-shadow-sm)}table.data{width:100%;border-collapse:collapse}table.data th,table.data td{padding:var(--occpl-space-2) var(--occpl-space-3);text-align:left;vertical-align:top;border-bottom:1px solid var(--occpl-color-border)}table.data th{font-size:var(--occpl-font-size-sm);color:var(--occpl-color-text-muted);font-weight:600;white-space:nowrap;background:var(--occpl-color-neutral-surface)}table.data tbody tr:hover{background:var(--occpl-color-info-surface)}table.data tbody tr:last-child td{border-bottom:0}table.data td.actions{text-align:right;white-space:nowrap}@media(max-width:40rem){table.data thead{display:none}table.data tr{display:block;padding:var(--occpl-space-2) 0;border-bottom:1px solid var(--occpl-color-border)}table.data td{display:flex;gap:var(--occpl-space-3);border:0;padding:var(--occpl-space-1) var(--occpl-space-3)}table.data td:before{content:attr(data-label);flex:0 0 7rem;font-weight:600;color:var(--occpl-color-text-muted);font-size:var(--occpl-font-size-sm)}table.data td.actions{justify-content:flex-start;flex-wrap:wrap}}dl.details{display:grid;grid-template-columns:minmax(8rem,max-content) 1fr;gap:var(--occpl-space-2) var(--occpl-space-4);margin:0}dl.details dt{font-weight:600;color:var(--occpl-color-text-muted);font-size:var(--occpl-font-size-sm)}dl.details dd{margin:0;min-width:0;overflow-wrap:anywhere}.tabs{display:flex;gap:var(--occpl-space-1);overflow-x:auto;border-bottom:1px solid var(--occpl-color-border)}.tabs a{padding:var(--occpl-space-2) var(--occpl-space-3);color:var(--occpl-color-text-muted);text-decoration:none;border-bottom:2px solid transparent;white-space:nowrap}.tabs a.active{color:var(--occpl-color-link);border-bottom-color:var(--occpl-color-primary);font-weight:600}.notice{padding:var(--occpl-space-3) var(--occpl-space-4);border-radius:var(--occpl-radius-md);border:1px solid var(--occpl-color-border);background:var(--occpl-color-info-surface)}.notice.warning{background:var(--occpl-color-warning-surface);border-color:var(--occpl-color-warning)}.notice.success{background:var(--occpl-color-success-surface);border-color:var(--occpl-color-success)}.meter{height:.5rem;border-radius:999px;background:var(--occpl-color-neutral-surface);overflow:hidden}.meter>span{display:block;height:100%;background:var(--occpl-gradient-button)}.meter.full>span{background:var(--occpl-color-danger)}pre.json{margin:0;padding:var(--occpl-space-3);max-height:24rem;overflow:auto;background:var(--occpl-color-neutral-surface);border-radius:var(--occpl-radius-sm);font-size:var(--occpl-font-size-sm)}.status-page{max-width:36rem;margin:var(--occpl-space-8) auto;padding:0 var(--occpl-space-4)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.add-heading{margin-top:var(--occpl-space-4)}fieldset.product{border:1px solid var(--occpl-color-border);border-radius:var(--occpl-radius-md);padding:var(--occpl-space-3);margin:0;min-width:0}.price{margin-bottom:var(--occpl-space-3)}.price .field{flex:0 1 10rem}input.limit{max-width:9rem}.add-product{margin-top:var(--occpl-space-3)}.add-product select{max-width:24rem}.action-row,.change-plan{margin-top:var(--occpl-space-3)}ul.history{margin:var(--occpl-space-2) 0 0;padding-left:var(--occpl-space-4)}fieldset.plain{border:0;padding:0;margin:0;min-width:0}.invite{margin-bottom:var(--occpl-space-4);background:var(--occpl-color-background)}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;background:var(--occpl-page-glow) fixed,var(--occpl-color-background);color:var(--occpl-color-text);font-family:var(--occpl-font-family);font-size:var(--occpl-font-size-md);line-height:1.5}a{color:var(--occpl-color-link)}:focus-visible{outline:2px solid var(--occpl-color-focus);outline-offset:2px}
