*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;height:100%;overflow:hidden}body{font-family:Courier Prime,monospace;background:#1a1612;color:#d4c49a;-webkit-font-smoothing:antialiased}:root{--ink: #1a1612;--ink-light: #2d2820;--canvas: #cdb87e;--canvas-dk: #b8a060;--manila: #d4a853;--manila-lt: #e8c878;--red: #cc2200;--red-dk: #8b1800;--olive: #4a4830;--olive-lt: #6a6840;--aged: #d4c49a;--aged-dk: #b8a878;--chrome-bg: #1e1b14;--chrome-border: #3a3420;--font-display: "Special Elite", serif;--font-body: "Courier Prime", monospace;--font-ui: "Oswald", "Special Elite", serif}.app-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100vw;height:100vh;background:var(--chrome-bg);gap:12px}.app-loading-text{font-family:var(--font-display);font-size:48px;color:var(--red);letter-spacing:.2em;text-shadow:0 0 40px rgba(204,34,0,.4)}.app-loading-sub{font-family:var(--font-body);font-size:12px;color:var(--aged-dk);letter-spacing:.15em;text-transform:uppercase}.auth-page{display:flex;align-items:center;justify-content:center;width:100vw;height:100vh;background:repeating-linear-gradient(0deg,transparent,transparent 34px,rgba(255,255,255,.02) 35px),radial-gradient(ellipse at 50% 40%,#2a2418,#120f0a)}.auth-card{width:420px;background:var(--chrome-bg);border:1px solid var(--chrome-border);box-shadow:0 0 60px #000c,inset 0 1px #ffffff0a;padding:40px 36px;position:relative}.auth-card:before,.auth-card:after{content:"";position:absolute;width:44px;height:16px;background:#d2be8040;transform:rotate(-8deg);box-shadow:0 1px 3px #00000080}.auth-card:before{top:-6px;left:20px;transform:rotate(-5deg)}.auth-card:after{bottom:-6px;right:20px;transform:rotate(3deg)}.auth-badge{display:inline-block;font-family:var(--font-ui);font-size:11px;letter-spacing:.3em;color:var(--red);border:1px solid var(--red);padding:3px 10px;margin-bottom:10px;opacity:.9}.auth-title{font-family:var(--font-display);font-size:28px;color:var(--aged);letter-spacing:.08em;line-height:1;margin-bottom:6px}.auth-subtitle{font-family:var(--font-body);font-size:10px;color:var(--olive-lt);letter-spacing:.12em;text-transform:uppercase}.auth-rule{height:1px;background:linear-gradient(90deg,transparent,var(--chrome-border),transparent);margin:20px 0}.auth-tabs{display:flex;gap:2px;margin-bottom:20px}.auth-tab{flex:1;background:transparent;border:1px solid var(--chrome-border);color:var(--aged-dk);font-family:var(--font-ui);font-size:11px;letter-spacing:.12em;padding:8px 4px;cursor:pointer;transition:all .15s}.auth-tab:hover{background:#ffffff0a;color:var(--aged)}.auth-tab.active{background:var(--olive);border-color:var(--olive-lt);color:var(--aged)}.auth-form{display:flex;flex-direction:column;gap:16px}.form-field{display:flex;flex-direction:column;gap:6px}.form-label{font-family:var(--font-ui);font-size:10px;letter-spacing:.2em;color:var(--aged-dk);text-transform:uppercase}.form-input{background:#100e0a;border:1px solid var(--chrome-border);color:var(--aged);font-family:var(--font-body);font-size:14px;padding:10px 12px;outline:none;transition:border-color .15s}.form-input:focus{border-color:var(--olive-lt);box-shadow:0 0 0 2px #6a684033}.form-input::placeholder{color:#4a4030}.auth-message{font-family:var(--font-body);font-size:12px;padding:10px 12px;border-left:3px solid}.auth-message--error{color:#f87171;border-color:#c20;background:#cc220014}.auth-message--success{color:#86efac;border-color:#2d9a60;background:#2d9a6014}.auth-submit{background:var(--red-dk);border:1px solid var(--red);color:var(--aged);font-family:var(--font-ui);font-size:13px;letter-spacing:.2em;padding:13px;cursor:pointer;transition:all .15s;margin-top:4px}.auth-submit:hover:not(:disabled){background:var(--red);box-shadow:0 0 20px #cc22004d}.auth-submit:disabled{opacity:.5;cursor:not-allowed}.auth-footer{margin-top:24px;text-align:center;font-family:var(--font-ui);font-size:9px;letter-spacing:.2em;color:#3a3020}.boards-page{width:100vw;height:100vh;background:radial-gradient(ellipse at 50% 0%,#2a2210,#120f08);display:flex;flex-direction:column;overflow:hidden}.boards-header{display:flex;align-items:center;justify-content:space-between;padding:16px 32px;border-bottom:1px solid var(--chrome-border);flex-shrink:0}.boards-header-left{display:flex;align-items:baseline;gap:20px}.boards-logo{font-family:var(--font-display);font-size:24px;color:var(--red);letter-spacing:.15em}.boards-tagline{font-family:var(--font-ui);font-size:10px;letter-spacing:.2em;color:var(--olive-lt);text-transform:uppercase}.boards-header-right{display:flex;align-items:center;gap:20px}.boards-agent{font-family:var(--font-body);font-size:11px;color:var(--aged-dk);letter-spacing:.1em}.boards-signout{background:transparent;border:1px solid var(--chrome-border);color:var(--aged-dk);font-family:var(--font-ui);font-size:10px;letter-spacing:.15em;padding:6px 14px;cursor:pointer;transition:all .15s}.boards-signout:hover{border-color:var(--aged-dk);color:var(--aged)}.boards-rule{height:1px;background:linear-gradient(90deg,transparent,rgba(74,72,48,.5) 20%,rgba(74,72,48,.5) 80%,transparent)}.boards-main{flex:1;overflow-y:auto;padding:32px 48px}.boards-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px}.boards-section-title{font-family:var(--font-display);font-size:20px;color:var(--aged);letter-spacing:.12em}.boards-new-btn{background:transparent;border:1px solid var(--red);color:var(--red);font-family:var(--font-ui);font-size:12px;letter-spacing:.18em;padding:8px 20px;cursor:pointer;transition:all .15s}.boards-new-btn:hover:not(:disabled){background:#cc22001a;box-shadow:0 0 16px #c203}.boards-new-btn:disabled{opacity:.5}.boards-error-banner{font-family:var(--font-body);font-size:12px;color:#f87171;border-left:3px solid var(--red);background:#cc220014;padding:10px 14px;margin-bottom:16px;letter-spacing:.05em}.boards-loading,.boards-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;gap:10px;font-family:var(--font-body);font-size:13px;color:#4a4030}.boards-empty-icon{font-size:48px;color:#3a3020;margin-bottom:8px}.boards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:24px}.board-card{background:transparent;border:none;cursor:pointer;text-align:left;display:flex;flex-direction:column;transition:transform .12s}.board-card:hover{transform:translateY(-3px) rotate(.5deg)}.board-card:active{transform:translateY(0)}.board-card-tab{width:60px;height:12px;background:var(--manila);border-radius:4px 4px 0 0;margin-left:12px;position:relative}.board-card-tab:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--manila-lt)}.board-card-preview{background:var(--manila);min-height:140px;padding:16px;position:relative;box-shadow:2px 3px 8px #00000080,inset 0 1px #ffffff26;display:flex;flex-direction:column;justify-content:space-between}.board-card-preview--new{background:transparent;border:2px dashed #3a3020;align-items:center;justify-content:center}.board-card-new-icon{font-size:36px;color:#4a4030}.board-card-stamp{font-family:var(--font-ui);font-size:9px;letter-spacing:.2em;color:#1a161259;border:1px solid rgba(26,22,18,.2);padding:2px 8px;align-self:flex-start;transform:rotate(-2deg)}.board-card-case-no{font-family:var(--font-body);font-size:11px;color:#1a161266;letter-spacing:.1em}.board-card-role{align-self:flex-start;margin-top:8px;font-family:var(--font-ui);font-size:9px;letter-spacing:.14em;color:#1a161299;border:1px solid rgba(26,22,18,.28);padding:2px 6px}.board-card-footer{background:#1a1612;padding:8px 12px;display:flex;flex-direction:column;gap:2px;border-top:1px solid #2a2010}.board-card-title{font-family:var(--font-body);font-size:13px;color:var(--aged);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.board-card-date{font-family:var(--font-body);font-size:10px;color:#4a4030;letter-spacing:.05em}.board-page{width:100vw;height:100vh;display:flex;flex-direction:column;overflow:hidden;background:var(--ink)}.board-chrome{display:flex;align-items:center;gap:16px;padding:8px 16px;background:var(--chrome-bg);border-bottom:1px solid var(--chrome-border);flex-shrink:0;min-height:44px}.board-back-btn{background:transparent;border:none;color:var(--aged-dk);font-family:var(--font-ui);font-size:11px;letter-spacing:.12em;cursor:pointer;padding:4px 8px;white-space:nowrap;transition:color .12s}.board-back-btn:hover{color:var(--aged)}.board-title{font-family:var(--font-display);font-size:18px;color:var(--aged);letter-spacing:.06em;cursor:text;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.board-title:hover{color:#fff}.board-title-input{font-family:var(--font-display);font-size:18px;color:var(--aged);letter-spacing:.06em;background:transparent;border:none;border-bottom:1px solid var(--olive-lt);outline:none;flex:1;min-width:0}.board-chrome-right{margin-left:auto;display:flex;align-items:center;gap:10px;font-family:var(--font-body);font-size:10px;color:#4a4030;letter-spacing:.1em;text-transform:uppercase}.board-access-pill{border:1px solid var(--chrome-border);padding:4px 8px;font-family:var(--font-ui);font-size:9px;letter-spacing:.14em;color:var(--aged-dk);white-space:nowrap}.board-access-pill.readonly{color:#d9b67a;border-color:#7b6130}.board-access-pill.editable{color:#98ba88;border-color:#4b6640}.board-share-controls{display:flex;align-items:center;gap:8px}.board-public-toggle,.board-invite-btn,.board-copy-btn{background:transparent;border:1px solid var(--chrome-border);color:var(--aged-dk);font-family:var(--font-ui);font-size:10px;letter-spacing:.12em;padding:5px 10px;cursor:pointer;white-space:nowrap}.board-public-toggle.public{border-color:#2d9a60a6;color:#8fd59c}.board-invite-btn{border-color:#cc220080;color:#d7ab97}.board-public-toggle:disabled,.board-invite-btn:disabled,.board-copy-btn:disabled{opacity:.5;cursor:not-allowed}.board-invite-role,.board-invite-link{background:#100e0a;border:1px solid var(--chrome-border);color:var(--aged);font-family:var(--font-body);font-size:11px;padding:5px 8px}.board-invite-role{text-transform:uppercase}.board-tool-hint{white-space:nowrap}.board-share-error{color:#f5a3a3;font-family:var(--font-body);font-size:10px;text-transform:none}.board-invite-output{display:flex;align-items:center;gap:6px}.board-invite-link{width:280px}.board-layout{display:flex;flex:1;overflow:hidden;position:relative}.board-upload-debug{position:fixed;left:72px;bottom:14px;z-index:30;max-width:min(820px,calc(100vw - 92px));background:#100e0aed;border:1px solid rgba(204,34,0,.35);color:#f0c7bb;padding:8px 10px;font-family:var(--font-body);font-size:11px;letter-spacing:.04em;text-transform:none;box-shadow:0 8px 30px #00000073}.board-perspective-wrapper{flex:1;overflow:hidden;position:relative;perspective:1400px;perspective-origin:50% 110%;background:#0e0c08}.board-perspective-wrapper>.konvajs-content{transform:rotateX(10deg);transform-origin:50% 100%;transform-style:preserve-3d}.toolbar{width:56px;background:var(--chrome-bg);border-right:1px solid var(--chrome-border);display:flex;flex-direction:column;align-items:center;padding:8px 0;flex-shrink:0;position:relative;z-index:10;box-shadow:2px 0 8px #0009}.toolbar-header{margin-bottom:4px}.toolbar-logo{font-family:var(--font-display);font-size:14px;color:var(--red);letter-spacing:.1em}.toolbar-divider{width:36px;height:1px;background:var(--chrome-border);margin:8px 0}.toolbar-spacer{flex:1}.tool-btn{width:40px;height:40px;background:transparent;border:1px solid transparent;color:var(--aged-dk);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:3px;margin:2px 0;transition:all .12s;position:relative;overflow:hidden}.tool-btn:hover{background:#ffffff0d;border-color:var(--chrome-border);color:var(--aged)}.tool-btn:disabled{opacity:.35;cursor:not-allowed}.tool-btn.active{background:#cc220026;border-color:#cc220080;color:var(--aged)}.tool-btn.active:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--red)}.tool-icon{font-size:16px;line-height:1}.tool-label{font-family:var(--font-ui);font-size:7px;letter-spacing:.08em;margin-top:2px;color:inherit}.tool-btn--action{opacity:.6}.tool-btn--action:hover{opacity:1}.stamp-presets{display:flex;flex-direction:column;align-items:center;gap:3px;padding:6px 0}.stamp-label{font-family:var(--font-ui);font-size:7px;letter-spacing:.12em;color:#4a4030;margin-bottom:4px;text-transform:uppercase}.stamp-btn{width:32px;height:32px;background:#ffffff08;border:1px solid var(--chrome-border);color:var(--aged-dk);cursor:pointer;font-size:14px;border-radius:2px;transition:all .12s;display:flex;align-items:center;justify-content:center}.stamp-btn:hover{background:#cc22001a;border-color:#c206;color:var(--aged)}.stamp-btn:disabled{opacity:.35;cursor:not-allowed}.note-editor{position:fixed;z-index:1000;resize:none;border:none;outline:2px solid rgba(204,34,0,.6);outline-offset:-2px;padding:6px 8px;font-family:Courier Prime,monospace;font-size:13px;line-height:1.5;background:#f5e642eb;color:#2a2000;overflow:hidden;box-shadow:0 4px 24px #00000080;transform-origin:top left}.board-loading,.board-error{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-family:var(--font-display);font-size:16px;color:var(--aged-dk);letter-spacing:.1em;background:#0e0c08}.board-error{color:#f87171}.invite-page{display:flex;width:100vw;height:100vh;align-items:center;justify-content:center;background:repeating-linear-gradient(0deg,transparent,transparent 34px,rgba(255,255,255,.02) 35px),radial-gradient(ellipse at 50% 40%,#2a2418,#120f0a)}.invite-card{width:480px;background:var(--chrome-bg);border:1px solid var(--chrome-border);box-shadow:0 0 60px #000c,inset 0 1px #ffffff0a;padding:40px 36px}.invite-message{font-family:var(--font-body);font-size:13px;margin-bottom:14px}.invite-message--working{color:var(--aged)}.invite-message--error{color:#f5a3a3}@media (max-width: 1200px){.board-chrome{flex-wrap:wrap}.board-chrome-right{margin-left:0;width:100%;flex-wrap:wrap}.board-invite-link{width:100%;max-width:360px}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--chrome-bg)}::-webkit-scrollbar-thumb{background:var(--chrome-border);border-radius:0}::-webkit-scrollbar-thumb:hover{background:var(--olive)}::selection{background:#cc22004d;color:var(--aged)}
