/* Nintai 2.0 — Propagation & Presentation expansion */
:root{--n2-bg:#130d09;--n2-panel:#21150f;--n2-panel2:#2b1c13;--n2-line:#5b3a27;--n2-gold:#d7b46a;--n2-cream:#f4e5c7;--n2-green:#86c779;--n2-cyan:#78c7c4;--n2-red:#c96b62}
.n2-modal{position:absolute;inset:0;z-index:85;display:flex;align-items:center;justify-content:center;background:rgba(4,2,1,.88);padding:10px;backdrop-filter:blur(3px)}
.n2-modal.hidden{display:none}.n2-window{width:min(96%,430px);height:min(93%,760px);display:flex;flex-direction:column;overflow:hidden;border:1px solid #735035;border-radius:14px;background:linear-gradient(180deg,#2b1d14,#160e09 24%);box-shadow:0 20px 70px #000,0 0 0 1px rgba(255,224,167,.06) inset;color:var(--n2-cream)}
.n2-window-head{height:55px;display:flex;align-items:center;justify-content:space-between;padding:0 14px;background:linear-gradient(180deg,#38251a,#271910);border-bottom:1px solid var(--n2-line);flex:none}.n2-window-head h2{display:flex;gap:9px;align-items:center;font:700 16px Georgia,serif;letter-spacing:.02em;color:#f2d89d}.n2-window-head h2 i{color:#95d88c}.n2-close{border:0;background:transparent;color:#e68177;font-size:28px;line-height:1;padding:4px 8px;cursor:pointer}.n2-window-body{display:flex;flex:1;min-height:0;flex-direction:column;overflow:hidden;background:radial-gradient(circle at 50% 0,rgba(100,69,43,.16),transparent 38%),#140d09}
.n2-tabs{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:3px;padding:7px;background:#100a07;border-bottom:1px solid #3f291c;overflow-x:auto;flex:none}.n2-tabs button{border:1px solid transparent;border-radius:7px;padding:8px 5px;background:#21150f;color:#bca98b;font:700 10px system-ui;white-space:nowrap}.n2-tabs button.active{border-color:#80603a;background:linear-gradient(#514028,#352719);color:#f7dfaa;box-shadow:0 0 14px rgba(215,180,106,.14)}
.n2-summary-strip{display:flex;gap:11px;align-items:center;overflow-x:auto;padding:8px 11px;background:#24170f;border-bottom:1px solid var(--n2-line);font:10px system-ui;color:#cbb99a;white-space:nowrap;flex:none}.n2-summary-strip b{color:#f1d489}.n2-pane{padding:12px;overflow-y:auto;min-height:0;flex:1}.n2-pane h3{margin:0;color:#f3dbac;font:700 15px Georgia,serif}.n2-pane p{margin:4px 0 0;color:#bda98c;font:11px/1.45 system-ui}.n2-section-intro,.n2-gallery-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:11px}.n2-section-intro>div,.n2-gallery-head>div{min-width:0}.n2-accent,.n2-secondary-button,.n2-pane button{border:1px solid #644b2e;border-radius:8px;background:linear-gradient(#3e3020,#2b2015);color:#f2d79d;padding:8px 10px;font:700 10px system-ui;cursor:pointer}.n2-accent{background:linear-gradient(#2f5b35,#1e3c25);border-color:#54855a;color:#cdebc9;white-space:nowrap}.n2-secondary-button{display:flex;align-items:center;justify-content:center;gap:7px;background:#231c18;color:#d8c7ae}.n2-pane button:disabled{opacity:.42;cursor:not-allowed;filter:grayscale(.4)}.n2-pane button.gold{border-color:#856633;background:linear-gradient(#66502b,#3f301d);color:#ffe5a4}
.n2-bench-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.n2-bench-slot{position:relative;min-height:155px;padding:12px 10px 10px;border:1px solid #543724;border-radius:11px;background:linear-gradient(155deg,#2a1c13,#180f0a);overflow:hidden}.n2-bench-slot.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border-style:dashed;color:#826f5a}.n2-bench-slot.empty>i{font-size:22px;margin:4px;color:#6a8c67}.n2-bench-slot.empty strong{font:700 12px Georgia,serif;color:#baa98f}.n2-bench-slot.empty span{font:9px system-ui;margin:4px 0 8px}.n2-bench-slot.ready{border-color:#638a55;box-shadow:0 0 15px rgba(89,147,74,.14) inset}.n2-slot-number{position:absolute;right:7px;top:7px;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:#120b07;color:#7e6b56;font:700 9px system-ui}.n2-card-kicker{color:#8ea985;text-transform:uppercase;letter-spacing:.08em;font:700 8px system-ui;margin-bottom:5px}.n2-card-kicker i{margin-right:5px}.n2-progress{height:6px;margin:9px 0 5px;border-radius:9px;background:#080504;overflow:hidden}.n2-progress span{height:100%;display:block;border-radius:9px;background:linear-gradient(90deg,#56834e,#a3d38c)}.n2-split{display:flex;justify-content:space-between;font:700 9px system-ui;color:#d5c29e}.n2-card-actions{display:grid;grid-template-columns:1fr;gap:5px;margin-top:9px}
.n2-species-picker{display:flex;align-items:center;gap:8px;margin-bottom:8px}.n2-species-picker label{font:700 9px system-ui;text-transform:uppercase;color:#8d7c68}.n2-species-picker select{flex:1;background:#20140e;border:1px solid #5b3a27;border-radius:8px;color:#f2ddba;padding:9px;font:700 12px system-ui}.n2-species-header{display:flex;justify-content:space-between;gap:10px;padding:12px;border:1px solid #57432a;border-radius:11px;background:linear-gradient(130deg,#332617,#1b120c);margin-bottom:9px}.n2-species-header span,.n2-season-hero span,.n2-exhibit-hero>div>span,.n2-lineage-card span{color:#9f8c70;font:700 8px system-ui;letter-spacing:.1em}.n2-seed-vault{display:flex;flex-direction:column;justify-content:center;gap:4px;min-width:86px;padding-left:10px;border-left:1px solid #554028;color:#c9e0b7;font:9px system-ui}.n2-seed-vault i{color:#d7b46a}.n2-stock-list{display:flex;flex-direction:column;gap:8px}.n2-stock-card{display:grid;grid-template-columns:34px 1fr;gap:8px;padding:10px;border:1px solid #4b3223;border-radius:10px;background:#1d130d}.n2-method-icon{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:#2f492e;color:#b7dda5}.n2-stock-main{min-width:0}.n2-metrics{display:flex;flex-wrap:wrap;gap:4px;margin-top:7px}.n2-metrics span,.n2-tags em{border:1px solid #4f3d29;border-radius:20px;background:#110b07;color:#bdaa8b;padding:3px 6px;font:8px system-ui;font-style:normal}.n2-stock-owned{margin-top:6px;color:#a9977f;font:9px system-ui}.n2-stock-owned b{color:#f0d18a}.n2-stock-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:6px}
.n2-order-list,.n2-upgrade-list{display:flex;flex-direction:column;gap:8px}.n2-order-card,.n2-upgrade-card{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:11px;border:1px solid #4f3524;border-radius:10px;background:#1d130d}.n2-order-card.fulfilled{opacity:.5}.n2-order-pay{display:flex;flex-direction:column;align-items:flex-end;gap:5px;min-width:70px}.n2-order-pay b{color:#f0ce7a}.n2-upgrade-hero{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px;border-radius:11px;background:linear-gradient(120deg,#293b24,#17120c);border:1px solid #4e6b42;margin-bottom:10px}.n2-upgrade-card>i{width:34px;text-align:center;font-size:20px;color:#a8cf98}.n2-upgrade-card>div{flex:1}.n2-upgrade-card.installed{border-color:#54784c;background:#182016}.n2-upgrade-card.installed>i{color:#80c278}
.n2-season-hero{display:flex;align-items:center;gap:12px;padding:14px;border-radius:12px;border:1px solid #5a4328;background:#2c2115}.n2-season-hero.spring{background:linear-gradient(135deg,#294028,#1b150e)}.n2-season-hero.summer{background:linear-gradient(135deg,#574322,#20170d)}.n2-season-hero.fall{background:linear-gradient(135deg,#56301c,#21130d)}.n2-season-hero.winter{background:linear-gradient(135deg,#29394a,#17151a)}.n2-season-icon{font-size:34px}.n2-guidance-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:9px}.n2-guidance-grid article{padding:9px 7px;border:1px solid #483122;border-radius:9px;background:#1b120d;text-align:center}.n2-guidance-grid i{color:#99c788}.n2-guidance-grid b{display:block;margin:4px 0;color:#e8d4ae;font:700 9px system-ui}.n2-guidance-grid p{font-size:8px}.n2-subheading{margin:13px 0 7px!important;font-size:12px!important}.n2-calendar-methods{display:flex;gap:7px}.n2-calendar-method{flex:1;display:flex;align-items:center;gap:8px;padding:10px;border:1px solid #4a3222;border-radius:9px;background:#1d130d}.n2-calendar-method.good{border-color:#557d4c;background:#192017}.n2-calendar-method i{color:#d0ad65}.n2-calendar-method b,.n2-calendar-method span{display:block}.n2-calendar-method b{font:700 10px system-ui;color:#ead8b7}.n2-calendar-method span{font:8px system-ui;color:#9c8c75;margin-top:2px}.n2-season-note{margin-top:10px;padding:9px;border-left:3px solid #6b8e5f;background:#1a1710;color:#ae9e85;font:9px/1.4 system-ui}
.n2-record-identity{display:flex;align-items:flex-end;justify-content:space-between;gap:8px;margin-bottom:9px}.n2-record-identity>div{flex:1}.n2-record-identity label{display:block;color:#8d7c68;font:700 8px system-ui;text-transform:uppercase;margin-bottom:4px}.n2-name-row{display:flex;gap:5px}.n2-name-row input{min-width:0;flex:1;border:1px solid #583a27;border-radius:7px;background:#130c08;color:#f5dfb9;padding:8px;font:700 11px system-ui}.n2-lineage-card{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid #5a442b;border-radius:11px;background:linear-gradient(135deg,#2a2115,#18100a);margin-bottom:11px}.n2-lineage-tree{font-size:29px}.n2-lineage-card p{margin-top:2px}.n2-tags{display:flex;gap:4px;flex-wrap:wrap;margin-top:6px}.n2-journal-list{position:relative;padding-left:15px}.n2-journal-list:before{content:"";position:absolute;left:5px;top:5px;bottom:4px;width:1px;background:#533822}.n2-journal-entry{position:relative;padding:0 0 12px 13px}.n2-journal-date{color:#927f65;font:700 8px system-ui;margin-bottom:3px}.n2-journal-dot{position:absolute;left:-13px;top:14px;width:7px;height:7px;border-radius:50%;background:#b38a4c;box-shadow:0 0 0 3px #1b120c}.n2-journal-dot.propagation,.n2-journal-dot.seed{background:#79a86f}.n2-journal-dot.pruning{background:#c76f61}.n2-journal-dot.photo{background:#65a4b5}.n2-journal-entry p{margin:0;padding:8px 9px;border-radius:8px;background:#1c120d;border:1px solid #432d20;color:#d8c6a8}
.n2-gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.n2-photo-card{position:relative;border:1px solid #4e3524;border-radius:9px;overflow:hidden;background:#1b120d}.n2-photo-image{display:block!important;width:100%;padding:0!important;border:0!important;border-radius:0!important;background:#0c0806!important}.n2-photo-image img{display:block;width:100%;aspect-ratio:2/3;object-fit:cover}.n2-photo-card>div:nth-of-type(1){display:flex;flex-direction:column;padding:7px 8px 8px}.n2-photo-card b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#ead4aa;font:700 9px system-ui}.n2-photo-card span{color:#8e7c66;font:8px system-ui}.n2-photo-actions{position:absolute;top:4px;right:4px;display:flex;gap:3px}.n2-photo-actions button{width:25px;height:25px;padding:0;border-radius:50%;background:rgba(14,9,6,.82)}.n2-empty-gallery{grid-column:1/-1;padding:35px 15px;text-align:center;border:1px dashed #503725;border-radius:10px;color:#786958}.n2-empty-gallery i{font-size:26px}.n2-photo-viewer{position:absolute;inset:0;z-index:95;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:25px;background:rgba(0,0,0,.94)}.n2-photo-viewer.hidden{display:none}.n2-photo-viewer img{max-width:100%;max-height:82%;border:1px solid #8c6c40;box-shadow:0 20px 55px #000}.n2-viewer-close{position:absolute;top:12px;right:13px}.n2-viewer-caption{margin-top:10px;color:#e8d3a9;font:12px Georgia,serif}
.n2-exhibit-hero{display:flex;gap:12px;align-items:center;padding:13px;border:1px solid #59442b;border-radius:11px;background:linear-gradient(120deg,#322616,#1a110b)}.n2-ribbon{width:58px;height:66px;display:flex;flex-direction:column;align-items:center;justify-content:center;clip-path:polygon(0 0,100% 0,100% 78%,70% 100%,50% 78%,30% 100%,0 78%);background:#7c5a31;color:#f9e4af}.n2-ribbon i{font-size:20px}.n2-ribbon span{font:700 8px system-ui}.n2-ribbon.gold{background:#a8812e}.n2-ribbon.silver{background:#6c7479}.n2-ribbon.bronze{background:#88522f}.n2-score-ring{--score:0;width:104px;height:104px;margin:14px auto;display:flex;align-items:baseline;justify-content:center;border-radius:50%;background:radial-gradient(circle,#18100b 55%,transparent 57%),conic-gradient(#b8cf78 calc(var(--score)*1%),#3b291b 0);padding-top:36px;box-sizing:border-box}.n2-score-ring b{font:700 26px Georgia,serif;color:#f0d897}.n2-score-ring span{font:9px system-ui;color:#907e65}.n2-score-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.n2-score-grid article{padding:8px;text-align:center;border:1px solid #463020;border-radius:8px;background:#1c120d}.n2-score-grid span,.n2-score-grid b{display:block}.n2-score-grid span{font:8px system-ui;color:#8f7e68}.n2-score-grid b{font:700 11px system-ui;color:#ead7b3;margin-top:2px}.n2-exhibit-button{display:block;width:100%;margin-top:10px;padding:11px!important;background:linear-gradient(#72542b,#44301c)!important;border-color:#9b763d!important}.n2-empty-state{margin:auto;padding:35px 20px;text-align:center;color:#8e7d68}.n2-empty-state i{font-size:30px;color:#6d8b67}.n2-empty-state h3{margin-top:9px}
.n2-settings-block{border:1px solid #5b432a;border-radius:10px;background:#140d09;padding:10px}.n2-settings-title{display:flex;align-items:center;justify-content:space-between;gap:8px}.n2-settings-title>div{display:grid;grid-template-columns:18px 1fr;align-items:center}.n2-settings-title i{grid-row:1/3;color:#8cc1dc}.n2-settings-title b{font:700 11px system-ui;color:#e8d5b0}.n2-settings-title span{font:8px system-ui;color:#887965}.n2-settings-title em{font:700 9px monospace;color:#86b9cd;font-style:normal}.n2-preset-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-top:8px}.n2-preset-grid button{display:flex;flex-direction:column;gap:3px;text-align:left;border:1px solid #463020;border-radius:7px;background:#20150f;color:#bca98e;padding:7px}.n2-preset-grid button.selected{border-color:#668b9e;background:#1e3038;box-shadow:0 0 11px rgba(104,170,194,.12)}.n2-preset-grid b{font:700 9px system-ui;color:#ead7b3}.n2-preset-grid span{font:7px/1.25 system-ui}.n2-buyback-button{display:flex;width:100%;flex-direction:column;align-items:center;gap:2px;margin-top:7px;padding:9px;border:1px solid #486743;border-radius:7px;background:linear-gradient(#294426,#1d2f1b);color:#c8e7bd;font:700 10px system-ui}.n2-buyback-button span{font:8px system-ui;color:#8eb088}.n2-cinematic-camera{position:absolute;z-index:71;right:15px;bottom:20px;display:flex;align-items:center;gap:7px;border:1px solid rgba(232,213,171,.5);border-radius:24px;background:rgba(24,15,10,.82);color:#f2dfb9;padding:10px 14px;font:700 11px system-ui;backdrop-filter:blur(4px)}.n2-cinematic-camera.hidden{display:none}.n2-stats-identity{margin-top:10px;display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:9px;border:1px solid #5c442c;border-radius:8px;background:#130d09}.n2-stats-identity>div{display:flex;flex-direction:column;padding:5px;background:#1d140e;border-radius:5px}.n2-stats-identity span{font-size:8px;color:#8e7d66;text-transform:uppercase}.n2-stats-identity b{font-size:9px;color:#e7d2ac;margin-top:2px;overflow:hidden;text-overflow:ellipsis}
.n2-offline-status{display:grid;grid-template-columns:24px 1fr;align-items:start;gap:8px;margin-top:8px;padding:8px;border:1px solid #3f583d;border-radius:7px;background:#162116}.n2-offline-status>i{color:#8fc48b;text-align:center;margin-top:2px}.n2-offline-status>div{display:flex;flex-direction:column;gap:2px}.n2-offline-status b{font:700 9px system-ui;color:#cbe8c5}.n2-offline-status span{font:8px/1.35 system-ui;color:#91aa8d}
@media(max-width:360px){.n2-window{width:100%;height:96%}.n2-bench-grid,.n2-gallery-grid{grid-template-columns:1fr}.n2-guidance-grid{grid-template-columns:1fr}.n2-stock-card{grid-template-columns:30px 1fr}.n2-preset-grid{grid-template-columns:1fr}.n2-record-identity{align-items:stretch;flex-direction:column}.n2-section-intro,.n2-gallery-head{align-items:stretch;flex-direction:column}.n2-accent{width:100%}}

/* 2.0.2 — consolidated propagation house */
.n2-tabs{grid-auto-columns:minmax(74px,1fr)}
.n2-species-selector{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;max-height:210px;overflow-y:auto;padding:3px 2px 9px;margin-bottom:8px;scrollbar-width:thin}
.n2-species-tile{position:relative;display:flex!important;min-width:0;min-height:73px;flex-direction:column;align-items:flex-start!important;justify-content:center!important;gap:3px!important;padding:8px!important;border:1px solid #483123!important;border-radius:9px!important;background:linear-gradient(150deg,#24170f,#17100b)!important;text-align:left!important;color:#cdbb9e!important}
.n2-species-tile.selected{border-color:#739064!important;background:linear-gradient(150deg,#2b4027,#182017)!important;box-shadow:0 0 0 1px rgba(155,211,137,.14) inset,0 0 13px rgba(105,164,91,.12)}
.n2-species-tile b{display:block;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:700 9px Georgia,serif;color:#ead7af}
.n2-species-tile small{display:block;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#8f806c;font:7px system-ui}
.n2-species-glyph{display:flex;align-items:center;gap:4px;color:#91c184;font-size:12px}.n2-species-glyph em{border-radius:8px;background:#536b43;color:#e0f1d6;padding:2px 4px;font:700 6px system-ui;font-style:normal;text-transform:uppercase}
.n2-cutting-source{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:9px;margin-bottom:9px;padding:11px;border:1px solid #4f3b29;border-radius:11px;background:linear-gradient(135deg,#2a2117,#18100b)}
.n2-cutting-source.ready{border-color:#56794f;background:linear-gradient(135deg,#263821,#17140d)}.n2-cutting-source.blocked{opacity:.84}.n2-cutting-source-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:#172817;color:#a8dc96;font-size:15px}.n2-cutting-source>div:nth-child(2){min-width:0}.n2-cutting-source h3{font-size:12px}.n2-cutting-source p{font-size:9px}.n2-cutting-source span{display:block;margin-top:4px;color:#8fa487;font:8px system-ui}.n2-cutting-source>button{grid-column:3;white-space:nowrap}.n2-cutting-source>button+button{grid-column:2/4;justify-self:end}
.n2-material-list,.n2-shop-products{display:flex;flex-direction:column;gap:8px}.n2-material-card,.n2-shop-product{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:9px;padding:10px;border:1px solid #493224;border-radius:10px;background:#1c120d}.n2-material-card.owned{border-color:#526947;background:linear-gradient(135deg,#1d281a,#18110c)}.n2-material-card.empty{opacity:.82}.n2-material-card>button,.n2-shop-product>button{grid-column:3;grid-row:1;align-self:center;min-width:88px}.n2-material-count{grid-column:3;grid-row:1;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:62px;padding:6px;border-radius:8px;background:#120c08}.n2-material-count b{color:#f1d28d;font:700 18px Georgia,serif}.n2-material-count span{color:#887966;font:7px system-ui;text-transform:uppercase}.n2-material-card>button{grid-column:1/-1;grid-row:auto;width:100%}.n2-shop-product>div:nth-child(2){min-width:0}.n2-tool-product{border-color:#5e5032;background:linear-gradient(135deg,#292317,#18110c)}
.n2-cutting-mode-banner{position:absolute;z-index:74;left:10px;right:10px;bottom:91px;display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:9px;padding:10px 11px;border:1px solid rgba(147,220,116,.72);border-radius:12px;background:linear-gradient(135deg,rgba(24,48,22,.96),rgba(11,20,11,.96));box-shadow:0 12px 32px rgba(0,0,0,.48),0 0 18px rgba(105,218,95,.13) inset;color:#e8f6de;backdrop-filter:blur(5px)}.n2-cutting-mode-banner.hidden{display:none}.n2-cutting-mode-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:#31532c;color:#d9ffd0}.n2-cutting-mode-copy{min-width:0}.n2-cutting-mode-copy b,.n2-cutting-mode-copy span{display:block}.n2-cutting-mode-copy b{font:700 11px Georgia,serif}.n2-cutting-mode-copy span{margin-top:2px;color:#afcda7;font:8px/1.3 system-ui}.n2-cutting-mode-banner button{border:1px solid #7c6346;border-radius:8px;background:#38271b;color:#f0d2a5;padding:8px 10px;font:700 9px system-ui}
@media(max-width:360px){.n2-species-selector{grid-template-columns:repeat(2,minmax(0,1fr))}.n2-cutting-source{grid-template-columns:34px 1fr}.n2-cutting-source>button{grid-column:1/-1;width:100%}.n2-cutting-source>button+button{grid-column:1/-1;justify-self:stretch}.n2-shop-product{grid-template-columns:32px 1fr}.n2-shop-product>button{grid-column:1/-1;grid-row:auto;width:100%}.n2-cutting-mode-banner{grid-template-columns:34px 1fr;bottom:94px}.n2-cutting-mode-banner button{grid-column:1/-1;width:100%}}

/* Nintai 2.2.1 — Exhibition Hall. */
.n2-exhibition-hall{display:flex;flex-direction:column;gap:14px}
.n2-exhibition-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:start;padding:14px;border:1px solid #60462f;border-radius:12px;background:linear-gradient(145deg,rgba(62,42,28,.82),rgba(25,17,12,.88))}
.n2-exhibition-summary>div:first-child>span{font-size:9px;letter-spacing:.14em;color:#d3b779;font-weight:900}.n2-exhibition-summary h3{margin:3px 0;color:#f0d9aa}.n2-exhibition-summary p{margin:0;max-width:430px;color:#bda98d;font-size:11px;line-height:1.45}
.n2-exhibition-metrics{display:grid;grid-template-columns:auto auto;gap:2px 8px;min-width:112px;text-align:right}.n2-exhibition-metrics b{color:#f1d07d;font-size:14px}.n2-exhibition-metrics span{color:#9e8c72;font-size:9px;align-self:center}
.n2-exhibit-slot-grid{display:flex;flex-direction:column;gap:12px}.n2-exhibit-slot{position:relative;padding:12px;border:1px solid #5d432d;border-radius:12px;background:rgba(28,19,13,.92);overflow:hidden}.n2-exhibit-slot-number{position:absolute;right:9px;top:8px;display:grid;place-items:center;width:22px;height:22px;border:1px solid #80603a;border-radius:999px;background:#23170f;color:#d9bd82;font-size:10px;font-weight:900;z-index:2}
.n2-exhibit-preview{display:block;width:100%;height:220px;border:1px solid #674a31;border-radius:9px;background:#e4dac4}.n2-exhibit-slot-head{display:flex;justify-content:space-between;gap:10px;margin-top:10px}.n2-exhibit-slot-head span{font-size:9px;letter-spacing:.1em;color:#d3b779;font-weight:900}.n2-exhibit-slot-head h3{margin:2px 0;color:#f2dfbd}.n2-exhibit-slot-head p{margin:0;color:#a99779;font-size:10px}.n2-exhibit-score-badge{display:flex;align-items:baseline;justify-content:center;min-width:58px}.n2-exhibit-score-badge b{font-size:24px;color:#efd07c}.n2-exhibit-score-badge span{font-size:9px;color:#9c896b}
.n2-exhibit-income-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:10px}.n2-exhibit-income-grid>div{padding:7px;border:1px solid #4c3828;border-radius:8px;background:rgba(11,8,6,.42);text-align:center}.n2-exhibit-income-grid span{display:block;color:#8f7d64;font-size:8px;text-transform:uppercase}.n2-exhibit-income-grid b{display:block;margin-top:2px;color:#e8cf9b;font-size:11px}.n2-exhibit-note{margin:9px 0;color:#ad9a7b;font-size:10px;line-height:1.4}.n2-exhibit-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px}.n2-exhibit-actions button,.n2-exhibit-candidate button,.locked-slot>button{min-height:38px;border:1px solid #6e875c;border-radius:8px;background:#20311d;color:#d9f1ca;font-weight:900;font-size:10px}.n2-exhibit-actions button.secondary{border-color:#7d5940;background:#342217;color:#efd5b2}
.n2-exhibit-empty-head{display:flex;gap:10px;align-items:flex-start;margin:4px 28px 11px 0}.n2-exhibit-empty-head>i{font-size:22px;color:#c39c55}.n2-exhibit-empty-head h3{margin:0;color:#e9d4ad}.n2-exhibit-empty-head p{margin:3px 0 0;color:#a28e70;font-size:10px;line-height:1.35}.n2-exhibit-candidate-list{display:flex;flex-direction:column;gap:7px}.n2-exhibit-candidate{display:grid;grid-template-columns:minmax(0,1fr) 68px minmax(84px,auto);gap:7px;align-items:center;padding:8px;border:1px solid #483526;border-radius:8px;background:rgba(10,7,5,.38)}.n2-exhibit-candidate>div:first-child span,.n2-exhibit-candidate small{display:block;color:#8f7c64;font-size:8px}.n2-exhibit-candidate>div:first-child b{display:block;color:#ead6b5;font-size:11px}.n2-exhibit-candidate-score{text-align:center}.n2-exhibit-candidate-score strong{display:block;color:#eac970;font-size:16px}.n2-exhibit-candidate-score span{display:block;color:#cbb58c;font-size:8px}.n2-exhibit-candidate button:disabled{border-color:#4a4036;background:#211b17;color:#807568;font-size:8px;padding:5px}.n2-exhibit-candidate.locked{opacity:.72}
.n2-exhibit-empty-copy{text-align:center;padding:18px;color:#96836a}.n2-exhibit-empty-copy i{font-size:22px}.locked-slot{text-align:center;padding:22px 14px}.locked-slot>i{font-size:24px;color:#8c7554}.locked-slot h3{margin:7px 0 3px;color:#ddc69f}.locked-slot p{margin:0 auto 10px;max-width:380px;color:#99866b;font-size:10px}.locked-slot ul{list-style:none;margin:0 0 11px;padding:0;display:grid;gap:5px;text-align:left}.locked-slot li{display:flex;justify-content:space-between;padding:6px 8px;border:1px solid #46362a;border-radius:7px;color:#8f7f6c;font-size:9px}.locked-slot li.met{border-color:#4e6c45;color:#b8d6a6}.locked-slot>button:disabled{border-color:#463b31;background:#211b17;color:#786d60}
@media(max-width:390px){.n2-exhibition-summary{grid-template-columns:1fr}.n2-exhibition-metrics{text-align:left;grid-template-columns:auto 1fr}.n2-exhibit-income-grid{grid-template-columns:1fr 1fr}.n2-exhibit-candidate{grid-template-columns:minmax(0,1fr) 56px}.n2-exhibit-candidate button{grid-column:1/-1}.n2-exhibit-preview{height:205px}}

/* 2.2.4 standalone Exhibition Hall and Records archive */
#n2-exhibition-body{min-height:100%}
.n2-exhibit-preview-button{position:relative;display:block;width:100%;padding:0;border:0;border-radius:9px;background:transparent;overflow:hidden;text-align:inherit;cursor:pointer}
.n2-exhibit-preview-button .n2-exhibit-preview{height:260px;transition:filter .18s ease,transform .18s ease}
.n2-exhibit-preview-button>span{position:absolute;left:50%;bottom:9px;transform:translateX(-50%);display:flex;align-items:center;gap:5px;padding:6px 10px;border:1px solid rgba(244,234,210,.6);border-radius:999px;background:rgba(35,23,15,.76);color:#f4ead2;font:800 9px system-ui;white-space:nowrap;backdrop-filter:blur(4px)}
.n2-exhibit-preview-button:active .n2-exhibit-preview{transform:scale(.99);filter:brightness(1.04)}
.n2-exhibit-history{display:flex;flex-direction:column;gap:12px}.n2-exhibit-history-list{display:flex;flex-direction:column;gap:8px}
.n2-exhibit-history-card{display:grid;grid-template-columns:76px minmax(0,1fr) 72px;gap:10px;align-items:center;padding:10px;border:1px solid #513a29;border-radius:10px;background:rgba(27,18,12,.9)}
.n2-exhibit-history-card.active{border-color:#6e875c;background:linear-gradient(120deg,rgba(34,52,29,.55),rgba(27,18,12,.9))}
.n2-exhibit-history-ribbon{text-align:center;color:#d8bd84}.n2-exhibit-history-ribbon i{display:block;font-size:18px}.n2-exhibit-history-ribbon b,.n2-exhibit-history-ribbon span{display:block;font-size:8px;margin-top:2px}
.n2-exhibit-history-copy>span{color:#91aa7c;font-size:8px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.n2-exhibit-history-copy h3{margin:2px 0;color:#ecd7b2;font-size:12px}.n2-exhibit-history-copy p{margin:0;color:#97846b;font-size:9px;line-height:1.35}
.n2-exhibit-history-values{display:grid;grid-template-columns:auto auto;gap:2px 5px;text-align:right}.n2-exhibit-history-values b{color:#e9ca7e;font-size:12px}.n2-exhibit-history-values span{color:#8f7c65;font-size:8px;align-self:center}
@media(max-width:390px){.n2-exhibit-preview-button .n2-exhibit-preview{height:230px}.n2-exhibit-history-card{grid-template-columns:58px minmax(0,1fr)}.n2-exhibit-history-values{grid-column:1/-1;grid-template-columns:auto 1fr auto 1fr;text-align:left}}


/* 2.2.7 Exhibition judging sheet */
.n2-exhibit-info-button{margin-top:10px;min-height:38px;padding:8px 12px;border:1px solid #9a7945;border-radius:9px;background:rgba(20,14,10,.48);color:#f1d390;font:900 10px system-ui;letter-spacing:.02em}.n2-exhibit-info-button i{margin-right:5px}.n2-exhibition-info{display:flex;flex-direction:column;gap:12px}.n2-exhibit-info-hero{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;padding:14px;border:1px solid #6d5235;border-radius:12px;background:linear-gradient(135deg,rgba(63,43,28,.86),rgba(24,16,11,.92))}.n2-exhibit-info-hero>div>span{font:900 9px system-ui;letter-spacing:.14em;color:#d6b874}.n2-exhibit-info-hero h3{margin:3px 0;color:#f2d9a5}.n2-exhibit-info-hero p{max-width:470px;margin:0;color:#bca789;font-size:10px;line-height:1.45}.n2-exhibit-info-hero button{flex:none;min-height:36px;padding:7px 10px;border:1px solid #70533a;border-radius:8px;background:#2a1c13;color:#e8d1ae;font:800 9px system-ui}.n2-exhibit-rule-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.n2-exhibit-rule-grid article{padding:9px;border:1px solid #51402e;border-radius:9px;background:rgba(20,14,10,.64);text-align:center}.n2-exhibit-rule-grid b,.n2-exhibit-rule-grid span,.n2-exhibit-rule-grid small{display:block}.n2-exhibit-rule-grid b{color:#f0cb72;font-size:12px}.n2-exhibit-rule-grid span{color:#e8d6b2;font-size:10px;margin-top:2px}.n2-exhibit-rule-grid small{color:#99866b;font-size:8px;margin-top:3px;line-height:1.35}.n2-exhibit-info-note{display:flex;gap:9px;align-items:flex-start;padding:10px;border:1px solid #596b4c;border-radius:9px;background:rgba(35,52,29,.42);color:#bdd7a9}.n2-exhibit-info-note p{margin:0;font-size:9px;line-height:1.45}.n2-exhibit-breakdown-list{display:flex;flex-direction:column;gap:10px}.n2-exhibit-breakdown-card{padding:11px;border:1px solid #5b432e;border-radius:11px;background:rgba(25,17,12,.94)}.n2-exhibit-breakdown-card>header{display:flex;justify-content:space-between;gap:10px}.n2-exhibit-breakdown-card>header>div:first-child>span{color:#c6a76c;font:900 8px system-ui;letter-spacing:.1em;text-transform:uppercase}.n2-exhibit-breakdown-card h3{margin:2px 0;color:#efd9b3;font-size:13px}.n2-exhibit-breakdown-card header p{margin:0;color:#95826a;font-size:9px}.n2-exhibit-breakdown-score{text-align:right}.n2-exhibit-breakdown-score b{color:#f1cc6e;font-size:26px}.n2-exhibit-breakdown-score span{color:#99866b;font-size:9px}.n2-exhibit-breakdown-score strong{display:block;color:#d6bf91;font-size:9px}.n2-exhibit-formula{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-top:10px}.n2-exhibit-formula>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 7px;padding:7px;border:1px solid #493629;border-radius:7px;background:rgba(8,6,5,.36)}.n2-exhibit-formula span{color:#a7957b;font-size:8px;text-transform:uppercase}.n2-exhibit-formula b{font-size:11px}.n2-exhibit-formula b.positive{color:#b9d8a5}.n2-exhibit-formula b.negative{color:#ef9c88}.n2-exhibit-formula small{grid-column:1/-1;color:#80715f;font-size:8px;line-height:1.3}.n2-exhibit-total{display:flex;justify-content:space-between;gap:8px;margin-top:7px;padding:8px;border:1px solid #765a36;border-radius:8px;background:rgba(86,59,30,.28)}.n2-exhibit-total span{color:#c8ae7a;font-size:9px}.n2-exhibit-total b{color:#f2d485;font-size:11px;text-align:right}.n2-exhibit-ribbon-gates{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:8px}.n2-exhibit-ribbon-gates section{padding:7px;border:1px solid #49372a;border-radius:8px;background:rgba(10,7,5,.34)}.n2-exhibit-ribbon-gates h4{margin:0 0 5px;color:#d8be89;font-size:9px}.n2-exhibit-gate{display:flex;align-items:center;gap:4px;margin-top:3px;font-size:8px}.n2-exhibit-gate.met{color:#a9d195}.n2-exhibit-gate.missing{color:#d9927e}.n2-exhibit-verdict{margin:8px 0 0;padding:8px;border-left:3px solid #b68a45;background:rgba(80,55,29,.24);color:#d9c39d;font-size:9px;line-height:1.4}.n2-exhibit-income-calc{margin-top:8px;padding:8px;border:1px solid #435d3d;border-radius:8px;background:rgba(29,48,27,.28)}.n2-exhibit-income-calc span,.n2-exhibit-income-calc b,.n2-exhibit-income-calc small{display:block}.n2-exhibit-income-calc span{color:#9fb98e;font-size:8px;text-transform:uppercase}.n2-exhibit-income-calc b{color:#d3e7c3;font-size:11px;margin-top:2px}.n2-exhibit-income-calc small{color:#819477;font-size:8px;margin-top:3px;line-height:1.35}@media(max-width:390px){.n2-exhibit-info-hero{flex-direction:column}.n2-exhibit-rule-grid,.n2-exhibit-ribbon-gates{grid-template-columns:1fr}.n2-exhibit-formula{grid-template-columns:1fr}}

/* 2.2.27 presentation controls + explicit gallery export control. */
body.cinematic .n2-cinematic-camera{
  display:flex;
  align-items:center;
  justify-content:center;
  right:14px;
  bottom:max(18px,env(safe-area-inset-bottom));
  width:36px;
  height:36px;
  padding:0;
  border-radius:999px;
  background:rgba(24,15,10,.72);
  border:1px solid rgba(232,213,171,.38);
  color:#f2dfb9;
  font-size:14px;
  backdrop-filter:blur(3px);
}
.n2-photo-actions{top:5px;right:5px;align-items:center}
.n2-photo-actions button{display:flex;align-items:center;justify-content:center;gap:4px;height:27px;min-width:27px;width:auto;padding:0 7px;border-radius:999px;background:rgba(14,9,6,.88);backdrop-filter:blur(3px)}
.n2-photo-actions .n2-photo-save{padding:0 8px;color:#d9f0d1;border-color:rgba(104,156,99,.68)}
.n2-photo-actions .n2-photo-save span{color:inherit;font:700 8px system-ui}

/* 2.2.29: make gallery file export and OS share separate, explicit actions. */
.n2-photo-actions .n2-photo-download{color:#d9f0d1;border-color:rgba(104,156,99,.68)}
.n2-photo-actions .n2-photo-share{color:#d8e8ff;border-color:rgba(105,145,190,.68)}
.n2-photo-actions .n2-photo-download span,.n2-photo-actions .n2-photo-share span{color:inherit;font:700 8px system-ui}
