:root{--washi: #f7f4ec;--paper: #fdfbf5;--ink: #23262c;--ink-soft: #5c6470;--ink-faint: #8b8468;--indigo: #1c3f5e;--indigo-deep: #142e46;--brand: #0f75bc;--ice: #d9e6f4;--rule: #ddd6c4;--rule-soft: #ece5d2;--gold: #c6a14b;--gold-ink: #7c6117;--vermilion: #c93f2b;--amber: #8a6a1e;--shadow: 0 1px 2px rgba(28, 63, 94, .07), 0 10px 28px rgba(28, 63, 94, .08)}*{box-sizing:border-box}html,body{margin:0}body{background:var(--washi);background-image:repeating-linear-gradient(0deg,transparent 0 31px,rgba(28,63,94,.035) 31px 32px);color:var(--ink);font:15px/1.55 Zen Kaku Gothic New,Hiragino Kaku Gothic ProN,sans-serif}button{font:inherit;cursor:pointer}:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:2px}.mast{background:var(--indigo);color:#fff;border-bottom:2.5px solid var(--gold);position:sticky;top:0;z-index:20}.mast-in{max-width:1120px;margin:0 auto;padding:12px 20px;display:flex;align-items:center;gap:16px;flex-wrap:wrap}.mast img.mk{height:27px;display:block}.brandname{line-height:1.15}.brandname b{font-family:Zen Old Mincho,serif;font-weight:900;font-size:19px;letter-spacing:.01em}.brandname small{display:block;font-size:9px;letter-spacing:.26em;text-transform:uppercase;color:var(--gold);font-weight:700}.mast nav{display:flex;gap:2px;margin-left:auto}.mast nav button{border:0;background:transparent;color:#bcd3e6;padding:8px 14px;border-radius:7px;font-size:14px;font-weight:500}.mast nav button:hover{background:#ffffff14;color:#fff}.mast nav button.active{background:#ffffff24;color:#fff;font-weight:700}.who{font-size:12px;color:#b3c9de}.devpill{font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--indigo);background:var(--ice);border-radius:99px;padding:2px 9px}main{max-width:1120px;margin:0 auto;padding:26px 20px 90px}.viewhead{display:flex;align-items:baseline;gap:14px;margin:4px 0 18px;flex-wrap:wrap}.viewhead h2{font-family:Zen Old Mincho,serif;font-weight:900;color:var(--indigo);font-size:22px;margin:0}.viewhead .count{color:var(--ink-faint);font-size:13px}.viewhead .spacer{flex:1}.muted{color:var(--ink-soft)}.empty{color:var(--ink-faint);padding:34px 0;text-align:center;font-size:14px;border:1px dashed var(--rule);border-radius:10px;background:var(--paper)}.btn{border:1px solid var(--rule);background:var(--paper);color:var(--ink);padding:9px 15px;border-radius:8px;font-weight:500}.btn:hover{border-color:var(--indigo)}.btn.primary{background:var(--indigo);border-color:var(--indigo);color:#fff;font-weight:700}.btn.primary:hover{background:var(--indigo-deep)}.btn.subtle{border:0;background:transparent;color:var(--ink-soft);padding-left:0}.btn.subtle:hover{color:var(--indigo)}.btn.seal{background:#fff;border:2px solid var(--gold);color:var(--gold-ink);font-weight:700}.btn.seal:hover{background:var(--gold);color:#fff}.btn:disabled{opacity:.45;cursor:default}.register{background:var(--paper);border:1px solid var(--rule);border-radius:10px;box-shadow:var(--shadow);overflow-x:auto}.reg-head{display:flex;gap:18px;align-items:baseline;padding:10px 14px;background:#d9e6f46b;border-bottom:1px solid var(--rule);font-size:12px;color:var(--ink-soft);flex-wrap:wrap}.reg-head b{color:var(--indigo);letter-spacing:.08em;font-size:11px}.reg-head span:last-child{margin-left:auto}table{width:100%;border-collapse:collapse;font-size:13.5px}th{text-align:left;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);padding:9px 14px;border-bottom:2px solid var(--indigo);white-space:nowrap;font-weight:700}td{padding:10px 14px;border-bottom:1px solid var(--rule-soft);vertical-align:middle}.col-subj{min-width:220px}tbody tr{cursor:pointer}tbody tr:nth-child(2n){background:#8baedc14}tbody tr:hover{background:var(--ice)}tbody tr:last-child td{border-bottom:0}.reqnum{font-weight:900;color:var(--brand);letter-spacing:.03em;white-space:nowrap}.urg{color:var(--vermilion);border:1.2px solid var(--vermilion);border-radius:4px;font-size:9px;font-weight:900;letter-spacing:.1em;padding:1px 5px;margin-right:7px;vertical-align:1px}.due-late{color:var(--vermilion);font-weight:700}.assn{color:var(--ink-soft);font-size:13px}.unassigned{color:var(--ink-faint);font-style:italic}.st{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:700;white-space:nowrap;color:var(--ink-soft)}.dot{width:10px;height:10px;border-radius:50%;border:1.6px solid var(--indigo);display:inline-block;flex:none}.dot.half{background:linear-gradient(90deg,var(--indigo) 50%,transparent 50%)}.dot.wait{border-color:var(--amber);background:linear-gradient(90deg,#b08a2e 50%,transparent 50%)}.dot.gold{border-color:var(--gold);background:var(--gold)}.dot.sealed{border-color:var(--gold);background:radial-gradient(circle at 35% 30%,#e9d494,var(--gold) 60%)}.dot.canceled{border-color:var(--ink-faint);background:repeating-linear-gradient(45deg,transparent 0 2px,#b6ac8f 2px 4px)}.st.gold-t{color:var(--amber)}.typegrid{display:grid;gap:0;margin-top:6px;max-width:660px;background:var(--paper);border:1px solid var(--rule);border-radius:10px;box-shadow:var(--shadow);overflow:hidden}.typecard{display:grid;grid-template-columns:auto 1fr auto;gap:4px 16px;align-items:baseline;text-align:left;background:transparent;border:0;border-bottom:1px solid var(--rule-soft);padding:17px 22px;width:100%}.typecard:last-child{border-bottom:0}.typecard:hover{background:var(--ice)}.typecard strong{font-family:Zen Old Mincho,serif;color:var(--indigo);font-size:17px;font-weight:900}.typecard span{color:var(--ink-soft);font-size:13px;grid-column:2}.typecard:after{content:"→";grid-column:3;grid-row:1 / span 2;align-self:center;color:var(--gold);font-size:17px}.slip{background:var(--paper);border:1px solid var(--rule);border-radius:10px;box-shadow:var(--shadow);max-width:560px;padding:5px}.slip-inner{border:1px solid var(--gold);border-radius:6px;padding-bottom:16px}.slip-head{padding:16px 22px 0}.slip-head h3{font-family:Zen Old Mincho,serif;color:var(--indigo);font-weight:900;font-size:19px;margin:0}.slip-no{padding:3px 22px 11px;color:var(--gold-ink);font-size:10.5px;letter-spacing:.22em;font-weight:700;border-bottom:1.5px solid var(--indigo)}.slip .f{padding:12px 22px 9px;border-bottom:1px solid var(--rule-soft);display:grid;gap:4px}.slip .f:last-of-type{border-bottom:0}.flabel{display:flex;gap:9px;align-items:center;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--indigo)}.fnum{width:17px;height:17px;border:1.4px solid var(--gold);color:var(--gold-ink);border-radius:50%;display:inline-grid;place-items:center;font-size:10px;flex:none}.slip input,.slip textarea,.slip select{font:inherit;color:var(--ink);border:0;border-bottom:1.5px solid #d5cdb8;background:transparent;padding:4px 0;outline:none;border-radius:0}.slip input:focus,.slip textarea:focus,.slip select:focus{border-bottom-color:var(--brand)}.slip input::placeholder,.slip textarea::placeholder{color:#a49b80}.fhint{font-size:12px;color:var(--ink-faint)}.slip .actions{display:flex;gap:10px;padding:16px 22px 4px}.slip .actions .primary{flex:1;padding:12px}.detail{background:var(--paper);border:1px solid var(--rule);border-radius:10px;box-shadow:var(--shadow);padding:22px 26px;position:relative}.detail-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:4px;padding-right:96px}.detail-head h2{font-family:Zen Old Mincho,serif;font-weight:900;color:var(--indigo);font-size:19px;margin:0}.detail-meta{display:flex;gap:16px;color:var(--ink-soft);font-size:12.5px;margin:6px 0 18px;flex-wrap:wrap}.comments{display:grid;gap:10px}.comment{border-left:1px solid var(--ice);background:#d9e6f42e;border-radius:0 8px 8px 0;padding:11px 15px}.comment.internal{background:#f8f1dd;border-left-color:#e3d3a2}.comment-head{display:flex;gap:10px;align-items:center;font-size:12.5px;margin-bottom:3px;flex-wrap:wrap}.comment-head strong{color:var(--indigo)}.tag-int{font-size:9.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--amber);border:1px solid #d8c68e;border-radius:4px;padding:1px 6px}.comment p{margin:0;font-size:13.5px}.comment time{color:var(--ink-faint);font-size:11.5px}.commentbox{margin-top:18px;display:grid;gap:9px}.commentbox textarea{font:inherit;padding:11px 13px;border:1px solid var(--rule);border-radius:8px;background:#fff;resize:vertical}.commentbox textarea:focus{outline:none;border-color:var(--brand)}.commentbox .row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.check{display:inline-flex;gap:7px;align-items:center;color:var(--ink-soft);font-size:13.5px}.sealrow{display:flex;align-items:center;gap:18px;margin-top:20px;border-top:1.5px dashed var(--rule);padding-top:18px;flex-wrap:wrap}.sealrow p{flex:1;min-width:220px;font-size:13.5px;color:var(--ink-soft);margin:0}.goldseal{position:absolute;top:18px;right:24px;width:82px;height:82px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#e9d494,var(--gold) 56%,#9a7a2e);display:grid;place-items:center;text-align:center;color:#563f0c;font-size:9px;font-weight:900;letter-spacing:.15em;line-height:1.35;box-shadow:1px 3px 9px #5a461459;transform:rotate(-6deg);-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='84' height='84'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.9'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .93 0'/%3E%3C/filter%3E%3Crect width='84' height='84' filter='url(%23n)'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='84' height='84'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.9'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .93 0'/%3E%3C/filter%3E%3Crect width='84' height='84' filter='url(%23n)'/%3E%3C/svg%3E")}.goldseal b{font-family:Zen Old Mincho,serif;font-size:18px;display:block;font-weight:900}.goldseal.stamping{animation:stamp .5s cubic-bezier(.19,1,.22,1) both}@keyframes stamp{0%{transform:rotate(-14deg) scale(2.1);opacity:0;filter:blur(2px)}60%{opacity:1;filter:blur(0)}to{transform:rotate(-6deg) scale(1);opacity:1}}.login{display:grid;place-items:center;min-height:100vh;padding:20px}.login-card{background:var(--paper);border:1px solid var(--rule);border-radius:12px;box-shadow:var(--shadow);padding:6px;max-width:400px;width:100%}.login-inner{border:1px solid var(--gold);border-radius:8px;padding:34px 32px;text-align:center}.login-inner img{height:34px;margin-bottom:14px}.login-inner img.tile{height:64px;border-radius:12px}.login-inner h1{font-family:Zen Old Mincho,serif;color:var(--indigo);font-size:21px;margin:0 0 4px}.login-inner .est{color:var(--gold-ink);font-size:9.5px;letter-spacing:.26em;text-transform:uppercase;font-weight:700;margin-bottom:14px}.login-inner p{color:var(--ink-soft);font-size:13.5px;margin:0 0 22px}.login-inner .primary{width:100%;padding:12px}.form-err{padding:10px 22px 0;color:var(--vermilion);font-size:13px}.toast{background:var(--indigo);color:#fff;border-radius:9px;padding:11px 16px;margin-bottom:16px;font-size:13.5px;cursor:pointer;box-shadow:var(--shadow);border-bottom:2.5px solid var(--gold)}.staff-controls{display:flex;gap:16px;flex-wrap:wrap;align-items:end;background:#d9e6f447;border:1px solid var(--rule);border-radius:8px;padding:12px 14px;margin:4px 0 16px}.staff-controls label{display:grid;gap:3px;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:var(--indigo)}.staff-controls select,.staff-controls input[type=date]{font:13.5px Zen Kaku Gothic New,sans-serif;padding:6px 8px;border:1px solid var(--rule);border-radius:6px;background:#fff;color:var(--ink);text-transform:none;letter-spacing:normal}.staff-controls .check{display:inline-flex;text-transform:none;letter-spacing:normal;font-size:13px;font-weight:500;color:var(--ink-soft);gap:6px}.fd-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px 20px;border:1px dashed var(--rule);border-radius:8px;padding:12px 16px;margin-bottom:16px;font-size:13.5px}.fd-grid>div{display:grid}.fd-k{font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--ink-faint)}.att-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}.att{border:1px solid var(--rule);background:var(--paper);border-radius:7px;padding:6px 11px;font-size:12.5px;color:var(--indigo);max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.att:hover{border-color:var(--brand)}.close-line{text-align:center;margin-top:46px;color:var(--ink-faint);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase}.close-line:before,.close-line:after{content:" — ";color:var(--gold)}@media (max-width: 720px){body{font-size:14.5px}.mast-in{padding:10px 14px;gap:10px}.brandname small,.who{display:none}.mast nav{width:100%;order:3;margin-left:0}.mast nav button{flex:1}main{padding:18px 14px 70px}.col-type,.col-assn,.col-req{display:none}.col-subj{min-width:170px}.slip{max-width:none}.detail{padding:18px 16px}.detail-head{padding-right:0}.goldseal{position:static;transform:rotate(-6deg);margin:0 auto}}.rev-sect{font-family:Zen Old Mincho,serif;font-weight:900;font-size:17px;color:var(--indigo);margin:26px 0 10px;letter-spacing:.01em}.rev-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}.rev-card{background:var(--paper);border:1px solid var(--rule);border-radius:8px;padding:14px 16px;box-shadow:var(--shadow)}.rev-card.firing{border-color:var(--vermilion);box-shadow:0 0 0 1px var(--vermilion),var(--shadow)}.rev-card-head{display:flex;align-items:baseline;gap:10px;justify-content:space-between}.rev-card-head b{font-size:14px;color:var(--indigo)}.rev-flag{font-size:9px;font-weight:800;letter-spacing:.22em;text-transform:uppercase;padding:2px 7px;border-radius:3px;white-space:nowrap}.rev-flag.ok{color:var(--indigo);border:1px solid var(--ice);background:var(--ice)}.rev-flag.bad{color:#fff;background:var(--vermilion)}.rev-bal{font-family:Zen Old Mincho,serif;font-weight:900;font-size:26px;color:var(--ink);margin:6px 0 2px;font-variant-numeric:tabular-nums}.rev-card.firing .rev-bal{color:var(--vermilion)}.rev-sub{font-size:12px;color:var(--ink-soft)}.rev-stats{display:flex;gap:22px;font-size:13px;color:var(--ink-soft);margin:0 0 10px}.rev-stats b{font-size:16px;color:var(--ink);font-family:Zen Old Mincho,serif;font-weight:900}.rev-stats .rev-stale,.rev-stats .rev-stale b{color:var(--vermilion)}.rev-note{font-size:12px;color:var(--ink-faint);margin-top:10px;font-style:italic}.rev-of{font-size:11px;color:var(--ink-faint)}.ns-link{color:var(--brand);text-decoration:none}.ns-link:hover{text-decoration:underline}
